]> git.ipfire.org Git - thirdparty/bind9.git/commitdiff
Check delegation response to ANY query
authorEvan Hunt <each@isc.org>
Thu, 11 Dec 2025 18:41:05 +0000 (10:41 -0800)
committerEvan Hunt <each@isc.org>
Thu, 11 Dec 2025 18:41:05 +0000 (10:41 -0800)
If mandatory glue is present, it should be returned when the query
type is ANY.

bin/tests/system/auth/ns1/example.net.db
bin/tests/system/auth/tests.sh

index 29885ca414e39ad78e76a075527c157ad7c81ece..edb4c9cbe7eafa1000e387b7f38d82f5e7ad6227 100644 (file)
@@ -20,3 +20,5 @@ $TTL 300        ; 5 minutes
                        NS      ns
 ns                      A       10.53.0.1
 server                 A       10.53.0.100
+child                  NS      ns.child
+ns.child               A       10.53.0.1
index edfab648bb32e5055da465f2d8108daf2f5abc65..957e48c693c8a4409c1338248b1e69fe18a3726e 100644 (file)
@@ -238,5 +238,15 @@ grep "; Report-Channel: \"rad.example.net\"" dig.out.test$n >/dev/null || ret=1
 [ $ret -eq 0 ] || echo_i "failed"
 status=$((status + ret))
 
+n=$((n + 1))
+echo_i "check delegation response to ANY query ($n)"
+ret=0
+$DIG $DIGOPTS @10.53.0.1 foo.child.example.net any >dig.out.test$n || ret=1
+grep "ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 2" dig.out.test$n >/dev/null || ret=1
+grep 'child\.example\.net\..300.IN.NS.ns\.child\.example\.net\.$' dig.out.test$n >/dev/null || ret=1
+grep 'ns\.child\.example\.net\..300.IN.A.10\.53\.0\.1$' dig.out.test$n >/dev/null || ret=1
+[ $ret -eq 0 ] || echo_i "failed"
+status=$((status + ret))
+
 echo_i "exit status: $status"
 [ $status -eq 0 ] || exit 1