]> git.ipfire.org Git - thirdparty/bind9.git/commitdiff
Use rndc_dumpdb() in the "sfcache" system test
authorMichał Kępień <michal@isc.org>
Thu, 8 Aug 2019 12:27:55 +0000 (14:27 +0200)
committerMichał Kępień <michal@isc.org>
Thu, 8 Aug 2019 13:12:12 +0000 (15:12 +0200)
(cherry picked from commit 4a8b3a8ac0642ce57eb450e5c6ab6111afa96aa2)

bin/tests/system/sfcache/clean.sh
bin/tests/system/sfcache/tests.sh

index f24d0161317f2384e756926a996ab58a1049653b..b4a0038938ca6f0e913992d56474b232ef53b01c 100644 (file)
@@ -15,5 +15,7 @@ rm -f */named.memstats
 rm -f */named.run
 rm -f */named.conf
 rm -f dig.*
+rm -f rndc.*
 rm -f sfcache.*
 rm -f ns*/named.lock
+rm -f ns5/named_dump*
index 2d451b36d2ca52ea499d052e2bc6ad377f01a280..7756e7d705a44f014be42c417a628b83c8ec44ac 100644 (file)
@@ -23,12 +23,8 @@ RNDCCMD="$RNDC -c $SYSTEMTESTTOP/common/rndc.conf -p ${CONTROLPORT} -s"
 echo_i "checking DNSSEC SERVFAIL is cached ($n)"
 ret=0
 $DIG $DIGOPTS +dnssec foo.example. a @10.53.0.5 > dig.out.ns5.test$n || ret=1
-$RNDCCMD 10.53.0.5 dumpdb -all 2>&1 | sed 's/^/I:ns5 /'
-for i in 1 2 3 4 5 6 7 8 9 10; do
-    awk '/Zone/{out=0} { if (out) print } /SERVFAIL/{out=1}' ns5/named_dump.db > sfcache.$n
-    [ -s "sfcache.$n" ] && break
-    sleep 1
-done
+rndc_dumpdb ns5 -all
+awk '/Zone/{out=0} { if (out) print } /SERVFAIL/{out=1}' ns5/named_dump.db.test$n > sfcache.$n
 grep "^; foo.example/A" sfcache.$n > /dev/null || ret=1
 n=`expr $n + 1`
 if [ $ret != 0 ]; then echo_i "failed"; fi
@@ -53,17 +49,16 @@ status=`expr $status + $ret`
 echo_i "switching to non-dnssec SERVFAIL tests"
 ret=0
 $RNDCCMD 10.53.0.5 flush 2>&1 | sed 's/^/I:ns5 /'
-$RNDCCMD 10.53.0.5 dumpdb -all 2>&1 | sed 's/^/I:ns5 /'
-awk '/SERVFAIL/ { next; out=1 } /Zone/ { out=0 } { if (out) print }' ns5/named_dump.db
+rndc_dumpdb ns5 -all
+mv ns5/named_dump.db.test$n ns5/named_dump.db.test$n.1
+awk '/SERVFAIL/ { next; out=1 } /Zone/ { out=0 } { if (out) print }' ns5/named_dump.db.test$n.1 > sfcache.$n.1
+[ -s "sfcache.$n.1" ] && ret=1
 echo_i "checking SERVFAIL is cached ($n)"
 $DIG $DIGOPTS bar.example2. a @10.53.0.5 > dig.out.ns5.test$n || ret=1
-for i in 1 2 3 4 5 6 7 8 9 10; do
-    $RNDCCMD 10.53.0.5 dumpdb -all 2>&1 | sed 's/^/I:ns5 /'
-    sleep 1
-    awk '/Zone/{out=0} { if (out) print } /SERVFAIL/{out=1}' ns5/named_dump.db > sfcache.$n
-    [ -s "sfcache.$n" ] && break
-done
-grep "^; bar.example2/A" sfcache.$n > /dev/null || ret=1
+rndc_dumpdb ns5 -all
+mv ns5/named_dump.db.test$n ns5/named_dump.db.test$n.2
+awk '/Zone/{out=0} { if (out) print } /SERVFAIL/{out=1}' ns5/named_dump.db.test$n.2 > sfcache.$n.2
+grep "^; bar.example2/A" sfcache.$n.2 > /dev/null || ret=1
 n=`expr $n + 1`
 if [ $ret != 0 ]; then echo_i "failed"; fi
 status=`expr $status + $ret`