]> granicus.if.org Git - pdns/commitdiff
Add 2 tests with subtrees inside a secure zone
authorPieter Lexis <pieter.lexis@powerdns.com>
Thu, 28 Apr 2016 12:30:32 +0000 (14:30 +0200)
committerPieter Lexis <pieter.lexis@powerdns.com>
Thu, 28 Apr 2016 12:30:32 +0000 (14:30 +0200)
To test if the recursor actually validates RRSIGs with a signer name
that is not directly a parent of the name to validate. i.e. validates
signer name = 'domain.example' and record owner name =
'some.sub.domain.example'

regression-tests.recursor-dnssec/basicDNSSEC.py
regression-tests.recursor-dnssec/recursortests.py

index b8b835a4ad801f158c75cf779d43aa62dee02a8f..b58ecc8da7b942bb9b8cd707c1b4e54611389e37 100644 (file)
@@ -67,3 +67,17 @@ class BasicDNSSEC(RecursorTest):
 
         self.assertRcodeEqual(res, dns.rcode.NOERROR)
         self.assertNoRRSIGsInAnswer(res)
+
+    def testSecureSubtreeInZoneAnswer(self):
+        res = self.sendQuery('host1.sub.secure.example.', 'A')
+        expected = dns.rrset.from_text('host1.sub.secure.example.', 0, dns.rdataclass.IN, 'A', '192.0.2.11')
+
+        self.assertRcodeEqual(res, dns.rcode.NOERROR)
+        self.assertMatchingRRSIGInAnswer(res, expected)
+        self.assertMessageIsAuthenticated(res)
+
+    def testSecureSubtreeInZoneNXDOMAIN(self):
+        res = self.sendQuery('host2.sub.secure.example.', 'A')
+
+        self.assertRcodeEqual(res, dns.rcode.NXDOMAIN)
+        self.assertMessageIsAuthenticated(res)
index 493e5b330fdc5553fe6822112876959c7684853f..8875190555250b15fea1ed6921c1403f61160455 100644 (file)
@@ -96,6 +96,8 @@ secure.example.          3600 IN NS   ns.secure.example.
 ns.secure.example.       3600 IN A    {prefix}.9
 
 host1.secure.example.    3600 IN A    192.0.2.2
+
+host1.sub.secure.example. 3600 IN A    192.0.2.11
         """,
         'bogus.example': """
 bogus.example.           3600 IN SOA  {soa}