From: Pieter Lexis Date: Tue, 17 Apr 2018 16:13:17 +0000 (+0200) Subject: EDNS trunc test: add <512 bytes test X-Git-Tag: dnsdist-1.3.1~50^2~6 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=b7f2a29758afa87ac62aae8629b9e428ad502f77;p=pdns EDNS trunc test: add <512 bytes test --- diff --git a/regression-tests.recursor-dnssec/test_EDNSBufferSize.py b/regression-tests.recursor-dnssec/test_EDNSBufferSize.py index d691915c1..89fcfd9e6 100644 --- a/regression-tests.recursor-dnssec/test_EDNSBufferSize.py +++ b/regression-tests.recursor-dnssec/test_EDNSBufferSize.py @@ -37,6 +37,7 @@ class EDNSBufferTest(RecursorTest): 05 | 1680 | 1680 | 1680 | 1680 (inc EDNS) | 1680 (inc EDNS) | 1680 | 06 | 1680 | 1680 | 512 (No EDNS) | 512 (+EDNS) | 512 (no EDNS) | (no EDNS) | 07 | 1680 | 1680 | 512 (No EDNS) | 513 (+EDNS) | TC (no EDNS) | (no EDNS) | + 08 | 1680 | 1680 | 511 | 501 (+EDNS) | 512 (inc EDNS) | 1680 | The qname is $testnum.edns-tests.example. """ @@ -111,7 +112,7 @@ edns-outgoing-bufsize=%d class EDNSBufferTest16801680(EDNSBufferTest): """ - Runs test cases 1, 2, 5, 6, 7 + Runs test cases 1, 2, 5, 6, 7, 8 """ def testEdnsBufferTestCase01(self): @@ -154,6 +155,14 @@ class EDNSBufferTest16801680(EDNSBufferTest): self.checkTruncatedResponse(message) self.checkEDNS(message, 0) + def testEdnsBufferTestCase08(self): + query = self.getMessage('08', 511) + for _ in range(10): + raw = self.sendUDPQuery(query, decode=False) + self.checkResponseContent(raw, 'H', 512, 181) + message = dns.message.from_wire(raw) + self.checkEDNS(message, 1680) + class EDNSBufferTest16801681(EDNSBufferTest): """ Runs test case 3 @@ -215,6 +224,8 @@ class UDPLargeResponder(DatagramProtocol): packet_size = 512 + 11 if testnum == 7: packet_size = 513 + 11 + if testnum == 8: + packet_size = 501 + 11 # An EDNS(0) RR without options is 11 bytes: # NAME: 1