From b6cce0fb8bd0bd9a70488c183a41c4f43c0eee2f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20K=C4=99pie=C5=84?= Date: Wed, 3 Apr 2019 12:57:33 +0200 Subject: [PATCH] Do not rely on default dig options in system tests Some system tests assume dig's default setings are in effect. While these defaults may only be silently overridden (because of specific options set in /etc/resolv.conf) for BIND releases using liblwres for parsing /etc/resolv.conf (i.e. BIND 9.11 and older), it is arguably prudent to make sure that tests relying on specific +timeout and +tries settings specify these explicitly in their dig invocations, in order to prevent test failures from being triggered by any potential changes to current defaults. --- bin/tests/system/legacy/tests.sh | 2 +- bin/tests/system/resolver/tests.sh | 4 ++-- bin/tests/system/rpzrecurse/tests.sh | 4 ++-- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/bin/tests/system/legacy/tests.sh b/bin/tests/system/legacy/tests.sh index 69afd94806..effc236628 100755 --- a/bin/tests/system/legacy/tests.sh +++ b/bin/tests/system/legacy/tests.sh @@ -12,7 +12,7 @@ SYSTEMTESTTOP=.. . $SYSTEMTESTTOP/conf.sh -DIGOPTS="-p ${PORT}" +DIGOPTS="-p ${PORT} +tries=3 +time=5" status=0 n=0 diff --git a/bin/tests/system/resolver/tests.sh b/bin/tests/system/resolver/tests.sh index 7b3c27531b..3d32e31ad6 100755 --- a/bin/tests/system/resolver/tests.sh +++ b/bin/tests/system/resolver/tests.sh @@ -770,7 +770,7 @@ status=`expr $status + $ret` n=`expr $n + 1` echo_i "check that the resolver accepts a reply with empty question section with TC=1 and retries over TCP ($n)" ret=0 -$DIG $DIGOPTS @10.53.0.5 truncated.no-questions. a > dig.ns5.out.${n} || ret=1 +$DIG $DIGOPTS @10.53.0.5 truncated.no-questions. a +tries=3 +time=5 > dig.ns5.out.${n} || ret=1 grep "status: NOERROR" dig.ns5.out.${n} > /dev/null || ret=1 grep "ANSWER: 1," dig.ns5.out.${n} > /dev/null || ret=1 grep "1\.2\.3\.4" dig.ns5.out.${n} > /dev/null || ret=1 @@ -780,7 +780,7 @@ status=`expr $status + $ret` n=`expr $n + 1` echo_i "check that the resolver rejects a reply with empty question section with TC=0 ($n)" ret=0 -$DIG $DIGOPTS @10.53.0.5 not-truncated.no-questions. a > dig.ns5.out.${n} || ret=1 +$DIG $DIGOPTS @10.53.0.5 not-truncated.no-questions. a +tries=3 +time=5 > dig.ns5.out.${n} || ret=1 grep "status: NOERROR" dig.ns5.out.${n} > /dev/null && ret=1 grep "ANSWER: 1," dig.ns5.out.${n} > /dev/null && ret=1 grep "1\.2\.3\.4" dig.ns5.out.${n} > /dev/null && ret=1 diff --git a/bin/tests/system/rpzrecurse/tests.sh b/bin/tests/system/rpzrecurse/tests.sh index 3c37535626..763cc2b5f8 100644 --- a/bin/tests/system/rpzrecurse/tests.sh +++ b/bin/tests/system/rpzrecurse/tests.sh @@ -264,7 +264,7 @@ for mode in native dnsrps; do t=`expr $t + 1` echo_i "running dig to follow CNAME (blocks, so runs in the background) (${t})" add_test_marker 10.53.0.2 - $DIG $DIGOPTS @10.53.0.2 -p ${PORT} www.test.example.org A > dig.out.${t} & + $DIG $DIGOPTS @10.53.0.2 -p ${PORT} www.test.example.org A +time=5 > dig.out.${t} & sleep 1 echo_i "removing the NSDNAME policy" cp ns2/db.6c.00.policy.local ns2/db.6a.00.policy.local @@ -316,7 +316,7 @@ for mode in native dnsrps; do t=`expr $t + 1` echo_i "running dig to follow CNAME (blocks, so runs in the background) (${t})" add_test_marker 10.53.0.2 - $DIG $DIGOPTS @10.53.0.2 -p ${PORT} www.test.example.org A > dig.out.${t} & + $DIG $DIGOPTS @10.53.0.2 -p ${PORT} www.test.example.org A +time=5 > dig.out.${t} & sleep 1 echo_i "removing the policy zone" cp ns2/named.default.conf ns2/named.conf