#!/bin/sh # # Copyright (C) 2000, 2001 Internet Software Consortium. # # Permission to use, copy, modify, and distribute this software for any # purpose with or without fee is hereby granted, provided that the above # copyright notice and this permission notice appear in all copies. # # THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM # DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL # IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL # INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT, # INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING # FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, # NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION # WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. # $Id: tests.sh,v 1.3 2001/01/09 21:44:14 bwelling Exp $ SYSTEMTESTTOP=.. . $SYSTEMTESTTOP/conf.sh status=0 $DIG +tcp +noadd +nosea +nostat +noquest +nocomm +nocmd a.example.\ @10.53.0.2 a -p 5300 > dig.out.ns2 || status=1 grep ";" dig.out.ns2 $DIG +tcp +noadd +nosea +nostat +noquest +nocomm +nocmd a.example.\ @10.53.0.3 a -p 5300 > dig.out.ns3 || status=1 grep ";" dig.out.ns3 $DIG +tcp +noadd +nosea +nostat +noquest +nocomm +nocmd a.example.\ @10.53.0.4 a -p 5300 > dig.out.ns4 || status=1 grep ";" dig.out.ns4 $PERL ../digcomp.pl dig.out.ns2 dig.out.ns3 || status=1 $PERL ../digcomp.pl dig.out.ns2 dig.out.ns4 || status=1 rm -f ns2/example.db cp ns2/example2.db ns2/example.db sleep 6 kill -HUP `cat ns2/named.pid` sleep 60 $DIG +tcp +noadd +nosea +nostat +noquest +nocomm +nocmd a.example.\ @10.53.0.2 a -p 5300 > dig.out.ns2 || status=1 grep ";" dig.out.ns2 $DIG +tcp +noadd +nosea +nostat +noquest +nocomm +nocmd a.example.\ @10.53.0.3 a -p 5300 > dig.out.ns3 || status=1 grep ";" dig.out.ns3 $DIG +tcp +noadd +nosea +nostat +noquest +nocomm +nocmd a.example.\ @10.53.0.4 a -p 5300 > dig.out.ns4 || status=1 grep ";" dig.out.ns4 $PERL ../digcomp.pl dig.out.ns2 dig.out.ns3 || status=1 $PERL ../digcomp.pl dig.out.ns2 dig.out.ns4 || status=1 echo "I:exit status: $status" exit $status kill -TERM `cat ns3/named.pid` > /dev/null 2>&1 if [ $? != 0 ]; then echo "I:ns3 died before a SIGTERM was sent" status=1 rm -f ns3/named.pid fi rm -f ns2/example.db cp ns2/example3.db ns2/example.db sleep 6 if [ -f ns3/named.pid ]; then echo "I:ns3 didn't die when sent a SIGTERM" kill -KILL `cat ns3/named.pid` > /dev/null 2>&1 if [ $? != 0 ]; then echo "I:ns3 died before a SIGKILL was sent" status=1 rm -f ns3/named.pid fi status=1 fi kill -HUP `cat ns2/named.pid` (cd ns3 ; $NAMED -c named.conf -d 99 -g >> named.run 2>&1 & ) sleep 60 $DIG +tcp +noadd +nosea +nostat +noquest +nocomm +nocmd a.example.\ @10.53.0.2 a -p 5300 > dig.out.ns2 || status=1 grep ";" dig.out.ns2 $DIG +tcp +noadd +nosea +nostat +noquest +nocomm +nocmd a.example.\ @10.53.0.3 a -p 5300 > dig.out.ns3 || status=1 grep ";" dig.out.ns3 $PERL ../digcomp.pl dig.out.ns2 dig.out.ns3 || status=1 rm -f ns2/example.db kill -TERM `cat ns2/named.pid` > /dev/null 2>&1 if [ $? != 0 ]; then echo "I:ns2 died before a SIGTERM was sent" status=1 rm -f ns2/named.pid fi sleep 6 if [ -f ns2/named.pid ]; then echo "I:ns2 didn't die when sent a SIGTERM" kill -KILL `cat ns2/named.pid` > /dev/null 2>&1 if [ $? != 0 ]; then echo "I:ns2 died before a SIGKILL was sent" status=1 rm -f ns2/named.pid fi status=1 fi cp ns2/example4.db ns2/example.db sleep 6 (cd ns2 ; $NAMED -c named.conf -d 99 -g >> named.run 2>&1 & ) sleep 60 $DIG +tcp +noadd +nosea +nostat +noquest +nocomm +nocmd a.example.\ @10.53.0.2 a -p 5300 > dig.out.ns2 || status=1 grep ";" dig.out.ns2 $DIG +tcp +noadd +nosea +nostat +noquest +nocomm +nocmd a.example.\ @10.53.0.3 a -p 5300 > dig.out.ns3 || status=1 grep ";" dig.out.ns3 $PERL ../digcomp.pl dig.out.ns2 dig.out.ns3 || status=1 echo "I:exit status: $status" exit $status