# #-- fwd_udptmout.test --# # source the master var file when it's there [ -f ../.tpkg.var.master ] && source ../.tpkg.var.master # use .tpkg.var.test for in test variable passing [ -f .tpkg.var.test ] && source .tpkg.var.test PRE="../.." # do the test # skip the single query test # so that all three queries get timeouts during the later test. # #echo "> dig www1.example.com." #dig @localhost -p $UNBOUND_PORT www1.example.com. | tee outfile #echo "> cat logfiles" #cat fwd.log #cat unbound.log #echo "> check answer for single query" #if grep "10.20.30.40" outfile; then #echo "OK" #else #echo "Not OK" #exit 1 #fi echo "> do queries" dig @localhost -p $UNBOUND_PORT www1.example.com. >outfile1 & digpid1=$! dig @localhost -p $UNBOUND_PORT www2.example.com. >outfile2 & digpid2=$! dig @localhost -p $UNBOUND_PORT www3.example.com. >outfile3 & digpid3=$! dig @localhost -p $UNBOUND_PORT www4.example.com. >outfile4 & digpid4=$! dig @localhost -p $UNBOUND_PORT www5.example.com. >outfile5 & digpid5=$! dig @localhost -p $UNBOUND_PORT www6.example.com. >outfile6 & digpid6=$! sleep 15 # some slow systems need more for processing if grep "10.20.30.40" outfile1 >/dev/null; then :; else sleep 2; fi if grep "10.20.30.50" outfile2 >/dev/null; then :; else sleep 2; fi if grep "10.20.30.60" outfile3 >/dev/null; then :; else sleep 2; fi if grep "10.20.30.70" outfile4 >/dev/null; then :; else sleep 2; fi if grep "10.20.30.80" outfile5 >/dev/null; then :; else sleep 2; fi if grep "10.20.30.90" outfile6 >/dev/null; then :; else sleep 2; fi kill -9 $digpid1 kill -9 $digpid2 kill -9 $digpid3 kill -9 $digpid4 kill -9 $digpid5 kill -9 $digpid6 echo "> cat outfile1" cat outfile1 echo "> cat outfile2" cat outfile2 echo "> cat outfile3" cat outfile3 echo "> cat outfile4" cat outfile4 echo "> cat outfile5" cat outfile5 echo "> cat outfile6" cat outfile6 echo "> cat logfiles" cat fwd.log cat unbound.log echo "> check answers for queries" if grep "10.20.30.40" outfile1; then echo "1 is OK" else echo "1 is not OK" exit 1 fi if grep "10.20.30.50" outfile2; then echo "2 is OK" else echo "2 is not OK" exit 1 fi if grep "10.20.30.60" outfile3; then echo "3 is OK" else echo "3 is not OK" exit 1 fi if grep "10.20.30.70" outfile4; then echo "4 is OK" else echo "4 is not OK" exit 1 fi if grep "10.20.30.80" outfile5; then echo "5 is OK" else echo "5 is not OK" exit 1 fi if grep "10.20.30.90" outfile6; then echo "6 is OK" else echo "6 is not OK" exit 1 fi exit 0