From: Remi Gacogne Date: Fri, 6 Jan 2017 12:16:35 +0000 (+0100) Subject: rec: Add a regression test for `NXDOMAIN` from `presolve()` X-Git-Tag: rec-4.1.0-alpha1~358^2 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=14919b17c895ad544446c187b00a20189882f788;p=pdns rec: Add a regression test for `NXDOMAIN` from `presolve()` --- diff --git a/regression-tests.recursor/config.sh b/regression-tests.recursor/config.sh index 6cacd0149..d7713360d 100755 --- a/regression-tests.recursor/config.sh +++ b/regression-tests.recursor/config.sh @@ -118,6 +118,7 @@ not-auth-zone.example.net. 3600 IN NS ns.not-auth-zone.example.net. ns.not-auth-zone.example.net. 3600 IN A $PREFIX.23 lowercase-outgoing.example.net. 3600 IN NS ns.lowercase-outgoing.example.net. ns.lowercase-outgoing.example.net. 3600 IN A $PREFIX.24 +nxdomainme.example.net. 3600 IN A $PREFIX.25 EOF mkdir $PREFIX.11 @@ -598,6 +599,10 @@ function prerpz(dq) end function preresolve(dq) + if dq.qname:equal("nxdomainme.example.net") then + dq.rcode = pdns.NXDOMAIN + return true + end if dq.qname:equal("android.marvin.example.net") then dq.wantsRPZ = false -- disable RPZ end diff --git a/regression-tests.recursor/preresolve-nxdomain/command b/regression-tests.recursor/preresolve-nxdomain/command new file mode 100755 index 000000000..05330c6f1 --- /dev/null +++ b/regression-tests.recursor/preresolve-nxdomain/command @@ -0,0 +1 @@ +$SDIG $nameserver 5301 nxdomainme.example.net a recurse hidettl 2>&1 diff --git a/regression-tests.recursor/preresolve-nxdomain/description b/regression-tests.recursor/preresolve-nxdomain/description new file mode 100644 index 000000000..38e5bfd5d --- /dev/null +++ b/regression-tests.recursor/preresolve-nxdomain/description @@ -0,0 +1,2 @@ +Test if we can correctly fake a NXDOMAIN answer from Lua preresolve + diff --git a/regression-tests.recursor/preresolve-nxdomain/expected_result b/regression-tests.recursor/preresolve-nxdomain/expected_result new file mode 100644 index 000000000..8d1d87975 --- /dev/null +++ b/regression-tests.recursor/preresolve-nxdomain/expected_result @@ -0,0 +1,2 @@ +Reply to question for qname='nxdomainme.example.net.', qtype=A +Rcode: 3 (Non-Existent domain), RD: 1, QR: 1, TC: 0, AA: 0, opcode: 0