strip additional records before truncating the message

This commit is contained in:
Michael Kuron
2021-02-28 22:46:29 +01:00
parent be42b16652
commit 9cd06d86cf
+3 -1
View File
@@ -141,8 +141,10 @@ class DynamicResolver(object):
class TruncatingDNSDatagramProtocol(dns.DNSDatagramProtocol): class TruncatingDNSDatagramProtocol(dns.DNSDatagramProtocol):
def writeMessage(self, message, address): def writeMessage(self, message, address):
if type(message) is dns.Message and len(message.toStr()) > 512: if type(message) is dns.Message and len(message.toStr()) > 512:
message.additional = []
if len(message.toStr()) > 512:
message.trunc = 1 message.trunc = 1
message.answers = message.additional = [] message.answers = []
dns.DNSDatagramProtocol.writeMessage(self, message, address) dns.DNSDatagramProtocol.writeMessage(self, message, address)
def main(): def main():