mirror of
https://github.com/fergalmoran/DnsServer.git
synced 2025-12-22 09:29:50 +00:00
FilterAaaa: code refactoring done for optimization.
This commit is contained in:
@@ -115,18 +115,6 @@ namespace FilterAaaa
|
|||||||
if (_bypassLocalZones && response.AuthoritativeAnswer)
|
if (_bypassLocalZones && response.AuthoritativeAnswer)
|
||||||
return response;
|
return response;
|
||||||
|
|
||||||
if (request.DnssecOk)
|
|
||||||
{
|
|
||||||
foreach (DnsResourceRecord record in response.Answer)
|
|
||||||
{
|
|
||||||
if (record.Type == DnsResourceRecordType.RRSIG)
|
|
||||||
{
|
|
||||||
//response is signed and the client is DNSSEC aware; must not be modified
|
|
||||||
return response;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (response.RCODE != DnsResponseCode.NoError)
|
if (response.RCODE != DnsResponseCode.NoError)
|
||||||
return response;
|
return response;
|
||||||
|
|
||||||
@@ -136,6 +124,24 @@ namespace FilterAaaa
|
|||||||
|
|
||||||
bool hasAAAA = false;
|
bool hasAAAA = false;
|
||||||
|
|
||||||
|
if (request.DnssecOk)
|
||||||
|
{
|
||||||
|
foreach (DnsResourceRecord record in response.Answer)
|
||||||
|
{
|
||||||
|
switch (record.Type)
|
||||||
|
{
|
||||||
|
case DnsResourceRecordType.AAAA:
|
||||||
|
hasAAAA = true;
|
||||||
|
break;
|
||||||
|
|
||||||
|
case DnsResourceRecordType.RRSIG:
|
||||||
|
//response is signed and the client is DNSSEC aware; must not be modified
|
||||||
|
return response;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
foreach (DnsResourceRecord record in response.Answer)
|
foreach (DnsResourceRecord record in response.Answer)
|
||||||
{
|
{
|
||||||
if (record.Type == DnsResourceRecordType.AAAA)
|
if (record.Type == DnsResourceRecordType.AAAA)
|
||||||
@@ -144,6 +150,7 @@ namespace FilterAaaa
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if (!hasAAAA)
|
if (!hasAAAA)
|
||||||
return response;
|
return response;
|
||||||
|
|||||||
Reference in New Issue
Block a user