cp -f ns3/nomaster.db ns3/nomaster1.db
rm -f Ksig0.example2.*
+#
+# SIG(0) required cryptographic support which may not be configured.
+#
test -r $RANDFILE || $GENRANDOM 400 $RANDFILE
-keyname=`$KEYGEN -q -r $RANDFILE -n HOST -a RSASHA1 -b 1024 -T KEY sig0.example2`
-cat ns1/example1.db $keyname.key > ns1/example2.db
-echo $keyname > keyname
+keyname=`$KEYGEN -q -r $RANDFILE -n HOST -a RSASHA1 -b 1024 -T KEY sig0.example2 2>/dev/null`
+if test -n "$keyname"
+then
+ cat ns1/example1.db $keyname.key > ns1/example2.db
+ echo $keyname > keyname
+else
+ cat ns1/example1.db > ns1/example2.db
+ rm -f keyname
+fi
if [ $ret != 0 ] ; then echo "I:failed"; status=`expr $status + $ret`; fi
n=`expr $n + 1`
-echo "I:checking update forwarding to with sig0 ($n)"
-keyname=`cat keyname`
-$NSUPDATE -k $keyname.private -- - <<EOF
-server 10.53.0.3 5300
-zone example2
-update add unsigned.example2. 600 A 10.10.10.1
-update add unsigned.example2. 600 TXT Foo
-send
+if test -f keyname
+then
+ echo "I:checking update forwarding to with sig0 ($n)"
+ ret=0
+ keyname=`cat keyname`
+ $NSUPDATE -k $keyname.private -- - <<EOF
+ server 10.53.0.3 5300
+ zone example2
+ update add unsigned.example2. 600 A 10.10.10.1
+ update add unsigned.example2. 600 TXT Foo
+ send
EOF
-$DIG unsigned.example2 A @10.53.0.1 -p 5300 > dig.out.ns1.test$n
-grep "status: NOERROR" dig.out.ns1.test$n > /dev/null || ret=1
-if [ $ret != 0 ] ; then echo "I:failed"; status=`expr $status + $ret`; fi
-n=`expr $n + 1`
+ $DIG unsigned.example2 A @10.53.0.1 -p 5300 > dig.out.ns1.test$n
+ grep "status: NOERROR" dig.out.ns1.test$n > /dev/null || ret=1
+ if [ $ret != 0 ] ; then echo "I:failed"; fi
+ status=`expr $status + $ret`
+ n=`expr $n + 1`
+fi
echo "I:exit status: $status"
exit $status