From: Michał Kępień Date: Wed, 3 Apr 2019 10:57:33 +0000 (+0200) Subject: Do not rely on default dig options in system tests X-Git-Tag: v9.15.0~59^2 X-Git-Url: http://git.ipfire.org/gitweb/index.cgi?a=commitdiff_plain;h=b6cce0fb8bd0bd9a70488c183a41c4f43c0eee2f;p=thirdparty%2Fbind9.git 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. --- diff --git a/bin/tests/system/legacy/tests.sh b/bin/tests/system/legacy/tests.sh index 69afd948069..effc2366283 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 7b3c27531b0..3d32e31ad6f 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 3c37535626b..763cc2b5f84 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