summaryrefslogtreecommitdiffstats
path: root/bin/tests/system/notify
diff options
context:
space:
mode:
Diffstat (limited to 'bin/tests/system/notify')
-rw-r--r--bin/tests/system/notify/tests.sh177
1 files changed, 86 insertions, 91 deletions
diff --git a/bin/tests/system/notify/tests.sh b/bin/tests/system/notify/tests.sh
index c02654e..fcc51d5 100644
--- a/bin/tests/system/notify/tests.sh
+++ b/bin/tests/system/notify/tests.sh
@@ -23,36 +23,35 @@ n=0
#
# Wait up to 10 seconds for the servers to finish starting before testing.
#
-for i in 1 2 3 4 5 6 7 8 9 10
-do
- ret=0
- $DIG +tcp -p ${PORT} example @10.53.0.2 soa > dig.out.ns2.test$n || ret=1
- grep "status: NOERROR" dig.out.ns2.test$n > /dev/null || ret=1
- grep "flags:.* aa[ ;]" dig.out.ns2.test$n > /dev/null || ret=1
- $DIG +tcp -p ${PORT} example @10.53.0.3 soa > dig.out.ns3.test$n || ret=1
- grep "status: NOERROR" dig.out.ns3.test$n > /dev/null || ret=1
- grep "flags:.* aa[ ;]" dig.out.ns3.test$n > /dev/null || ret=1
- nr=`grep 'x[0-9].*sending notify to' ns2/named.run | wc -l`
- [ $nr -eq 20 ] || ret=1
- [ $ret = 0 ] && break
- sleep 1
+for i in 1 2 3 4 5 6 7 8 9 10; do
+ ret=0
+ $DIG +tcp -p ${PORT} example @10.53.0.2 soa >dig.out.ns2.test$n || ret=1
+ grep "status: NOERROR" dig.out.ns2.test$n >/dev/null || ret=1
+ grep "flags:.* aa[ ;]" dig.out.ns2.test$n >/dev/null || ret=1
+ $DIG +tcp -p ${PORT} example @10.53.0.3 soa >dig.out.ns3.test$n || ret=1
+ grep "status: NOERROR" dig.out.ns3.test$n >/dev/null || ret=1
+ grep "flags:.* aa[ ;]" dig.out.ns3.test$n >/dev/null || ret=1
+ nr=$(grep 'x[0-9].*sending notify to' ns2/named.run | wc -l)
+ [ $nr -eq 20 ] || ret=1
+ [ $ret = 0 ] && break
+ sleep 1
done
-n=`expr $n + 1`
+n=$(expr $n + 1)
echo_i "checking initial status ($n)"
ret=0
-$DIG $DIGOPTS a.example. @10.53.0.2 a > dig.out.ns2.test$n || ret=1
-grep "10.0.0.1" dig.out.ns2.test$n > /dev/null || ret=1
+$DIG $DIGOPTS a.example. @10.53.0.2 a >dig.out.ns2.test$n || ret=1
+grep "10.0.0.1" dig.out.ns2.test$n >/dev/null || ret=1
-$DIG $DIGOPTS a.example. @10.53.0.3 a > dig.out.ns3.test$n || ret=1
-grep "10.0.0.1" dig.out.ns3.test$n > /dev/null || ret=1
+$DIG $DIGOPTS a.example. @10.53.0.3 a >dig.out.ns3.test$n || ret=1
+grep "10.0.0.1" dig.out.ns3.test$n >/dev/null || ret=1
digcomp dig.out.ns2.test$n dig.out.ns3.test$n || ret=1
[ $ret = 0 ] || echo_i "failed"
-status=`expr $ret + $status`
+status=$(expr $ret + $status)
-n=`expr $n + 1`
+n=$(expr $n + 1)
echo_i "checking startup notify rate limit ($n)"
ret=0
awk '/x[0-9].*sending notify to/ {
@@ -86,61 +85,60 @@ END {
print "average:", average;
if (average < 0.180) exit(1);
if (count < 20) exit(1);
-}' ns2/named.run > awk.out.ns2.test$n || ret=1
+}' ns2/named.run >awk.out.ns2.test$n || ret=1
[ $ret = 0 ] || echo_i "failed"
-status=`expr $ret + $status`
+status=$(expr $ret + $status)
-nextpart ns3/named.run > /dev/null
+nextpart ns3/named.run >/dev/null
sleep 1 # make sure filesystem time stamp is newer for reload.
rm -f ns2/example.db
cp -f ns2/example2.db ns2/example.db
if [ ! "$CYGWIN" ]; then
- echo_i "reloading with example2 using HUP and waiting up to 45 seconds"
- $KILL -HUP `cat ns2/named.pid`
+ echo_i "reloading with example2 using HUP and waiting up to 45 seconds"
+ $KILL -HUP $(cat ns2/named.pid)
else
- echo_i "reloading with example2 using rndc and waiting up to 45 seconds"
- rndc_reload ns2 10.53.0.2
+ echo_i "reloading with example2 using rndc and waiting up to 45 seconds"
+ rndc_reload ns2 10.53.0.2
fi
try=0
-while test $try -lt 45
-do
- nextpart ns3/named.run > tmp
- grep "transfer of 'example/IN' from 10.53.0.2#.*success" tmp > /dev/null && break
- sleep 1
- try=`expr $try + 1`
+while test $try -lt 45; do
+ nextpart ns3/named.run >tmp
+ grep "transfer of 'example/IN' from 10.53.0.2#.*success" tmp >/dev/null && break
+ sleep 1
+ try=$(expr $try + 1)
done
-n=`expr $n + 1`
+n=$(expr $n + 1)
echo_i "checking notify message was logged ($n)"
ret=0
-grep 'notify from 10.53.0.2#[0-9][0-9]*: serial 2$' ns3/named.run > /dev/null || ret=1
+grep 'notify from 10.53.0.2#[0-9][0-9]*: serial 2$' ns3/named.run >/dev/null || ret=1
[ $ret = 0 ] || echo_i "failed"
-status=`expr $ret + $status`
+status=$(expr $ret + $status)
-n=`expr $n + 1`
+n=$(expr $n + 1)
echo_i "checking example2 loaded ($n)"
ret=0
-$DIG $DIGOPTS a.example. @10.53.0.2 a > dig.out.ns2.test$n || ret=1
-grep "10.0.0.2" dig.out.ns2.test$n > /dev/null || ret=1
+$DIG $DIGOPTS a.example. @10.53.0.2 a >dig.out.ns2.test$n || ret=1
+grep "10.0.0.2" dig.out.ns2.test$n >/dev/null || ret=1
[ $ret = 0 ] || echo_i "failed"
-status=`expr $ret + $status`
+status=$(expr $ret + $status)
-n=`expr $n + 1`
+n=$(expr $n + 1)
echo_i "checking example2 contents have been transferred after HUP reload ($n)"
ret=0
-$DIG $DIGOPTS a.example. @10.53.0.2 a > dig.out.ns2.test$n || ret=1
-grep "10.0.0.2" dig.out.ns2.test$n > /dev/null || ret=1
+$DIG $DIGOPTS a.example. @10.53.0.2 a >dig.out.ns2.test$n || ret=1
+grep "10.0.0.2" dig.out.ns2.test$n >/dev/null || ret=1
-$DIG $DIGOPTS a.example. @10.53.0.3 a > dig.out.ns3.test$n || ret=1
-grep "10.0.0.2" dig.out.ns3.test$n > /dev/null || ret=1
+$DIG $DIGOPTS a.example. @10.53.0.3 a >dig.out.ns3.test$n || ret=1
+grep "10.0.0.2" dig.out.ns3.test$n >/dev/null || ret=1
digcomp dig.out.ns2.test$n dig.out.ns3.test$n || ret=1
[ $ret = 0 ] || echo_i "failed"
-status=`expr $ret + $status`
+status=$(expr $ret + $status)
echo_i "stopping master and restarting with example4 then waiting up to 45 seconds"
stop_server ns2
@@ -151,67 +149,65 @@ cp -f ns2/example4.db ns2/example.db
start_server --noclean --restart --port "${PORT}" ns2
try=0
-while test $try -lt 45
-do
- nextpart ns3/named.run > tmp
- grep "transfer of 'example/IN' from 10.53.0.2#.*success" tmp > /dev/null && break
- sleep 1
- try=`expr $try + 1`
+while test $try -lt 45; do
+ nextpart ns3/named.run >tmp
+ grep "transfer of 'example/IN' from 10.53.0.2#.*success" tmp >/dev/null && break
+ sleep 1
+ try=$(expr $try + 1)
done
-n=`expr $n + 1`
+n=$(expr $n + 1)
echo_i "checking notify message was logged ($n)"
ret=0
-grep 'notify from 10.53.0.2#[0-9][0-9]*: serial 4$' ns3/named.run > /dev/null || ret=1
+grep 'notify from 10.53.0.2#[0-9][0-9]*: serial 4$' ns3/named.run >/dev/null || ret=1
[ $ret = 0 ] || echo_i "failed"
-status=`expr $ret + $status`
+status=$(expr $ret + $status)
-n=`expr $n + 1`
+n=$(expr $n + 1)
echo_i "checking example4 loaded ($n)"
ret=0
-$DIG $DIGOPTS a.example. @10.53.0.2 a > dig.out.ns2.test$n || ret=1
-grep "10.0.0.4" dig.out.ns2.test$n > /dev/null || ret=1
+$DIG $DIGOPTS a.example. @10.53.0.2 a >dig.out.ns2.test$n || ret=1
+grep "10.0.0.4" dig.out.ns2.test$n >/dev/null || ret=1
[ $ret = 0 ] || echo_i "failed"
-status=`expr $ret + $status`
+status=$(expr $ret + $status)
-n=`expr $n + 1`
+n=$(expr $n + 1)
echo_i "checking example4 contents have been transferred after restart ($n)"
ret=0
-$DIG $DIGOPTS a.example. @10.53.0.2 a > dig.out.ns2.test$n || ret=1
-grep "10.0.0.4" dig.out.ns2.test$n > /dev/null || ret=1
+$DIG $DIGOPTS a.example. @10.53.0.2 a >dig.out.ns2.test$n || ret=1
+grep "10.0.0.4" dig.out.ns2.test$n >/dev/null || ret=1
-$DIG $DIGOPTS a.example. @10.53.0.3 a > dig.out.ns3.test$n || ret=1
-grep "10.0.0.4" dig.out.ns3.test$n > /dev/null || ret=1
+$DIG $DIGOPTS a.example. @10.53.0.3 a >dig.out.ns3.test$n || ret=1
+grep "10.0.0.4" dig.out.ns3.test$n >/dev/null || ret=1
digcomp dig.out.ns2.test$n dig.out.ns3.test$n || ret=1
[ $ret = 0 ] || echo_i "failed"
-status=`expr $ret + $status`
+status=$(expr $ret + $status)
-n=`expr $n + 1`
+n=$(expr $n + 1)
echo_i "checking notify to alternate port with master inheritance ($n)"
-$NSUPDATE << EOF
+$NSUPDATE <<EOF
server 10.53.0.2 ${PORT}
zone x21
update add added.x21 0 in txt "test string"
send
EOF
-for i in 1 2 3 4 5 6 7 8 9
-do
- $DIG $DIGOPTS added.x21. @10.53.0.4 txt -p $EXTRAPORT1 > dig.out.ns4.test$n || ret=1
- grep "test string" dig.out.ns4.test$n > /dev/null && break
- sleep 1
+for i in 1 2 3 4 5 6 7 8 9; do
+ $DIG $DIGOPTS added.x21. @10.53.0.4 txt -p $EXTRAPORT1 >dig.out.ns4.test$n || ret=1
+ grep "test string" dig.out.ns4.test$n >/dev/null && break
+ sleep 1
done
-grep "test string" dig.out.ns4.test$n > /dev/null || ret=1
+grep "test string" dig.out.ns4.test$n >/dev/null || ret=1
[ $ret = 0 ] || echo_i "failed"
-status=`expr $ret + $status`
+status=$(expr $ret + $status)
-n=`expr $n + 1`
+n=$(expr $n + 1)
echo_i "checking notify to multiple views using tsig ($n)"
ret=0
-$NSUPDATE << EOF
+$NSUPDATE <<EOF
server 10.53.0.5 ${PORT}
zone x21
key a aaaaaaaaaaaaaaaaaaaa
@@ -219,24 +215,23 @@ update add added.x21 0 in txt "test string"
send
EOF
-for i in 1 2 3 4 5 6 7 8 9
-do
- $DIG $DIGOPTS added.x21. -y b:bbbbbbbbbbbbbbbbbbbb @10.53.0.5 \
- txt > dig.out.b.ns5.test$n || ret=1
- $DIG $DIGOPTS added.x21. -y c:cccccccccccccccccccc @10.53.0.5 \
- txt > dig.out.c.ns5.test$n || ret=1
- grep "test string" dig.out.b.ns5.test$n > /dev/null &&
- grep "test string" dig.out.c.ns5.test$n > /dev/null &&
- break
- sleep 1
+for i in 1 2 3 4 5 6 7 8 9; do
+ $DIG $DIGOPTS added.x21. -y b:bbbbbbbbbbbbbbbbbbbb @10.53.0.5 \
+ txt >dig.out.b.ns5.test$n || ret=1
+ $DIG $DIGOPTS added.x21. -y c:cccccccccccccccccccc @10.53.0.5 \
+ txt >dig.out.c.ns5.test$n || ret=1
+ grep "test string" dig.out.b.ns5.test$n >/dev/null \
+ && grep "test string" dig.out.c.ns5.test$n >/dev/null \
+ && break
+ sleep 1
done
-grep "test string" dig.out.b.ns5.test$n > /dev/null || ret=1
-grep "test string" dig.out.c.ns5.test$n > /dev/null || ret=1
-grep "sending notify to 10.53.0.5#[0-9]* : TSIG (b)" ns5/named.run > /dev/null || ret=1
-grep "sending notify to 10.53.0.5#[0-9]* : TSIG (c)" ns5/named.run > /dev/null || ret=1
+grep "test string" dig.out.b.ns5.test$n >/dev/null || ret=1
+grep "test string" dig.out.c.ns5.test$n >/dev/null || ret=1
+grep "sending notify to 10.53.0.5#[0-9]* : TSIG (b)" ns5/named.run >/dev/null || ret=1
+grep "sending notify to 10.53.0.5#[0-9]* : TSIG (c)" ns5/named.run >/dev/null || ret=1
[ $ret = 0 ] || echo_i "failed"
-status=`expr $ret + $status`
+status=$(expr $ret + $status)
echo_i "exit status: $status"
[ $status -eq 0 ] || exit 1