only generate DSA/ECDSA signatures in named if we have a source of randomness and only on specific platforms

This commit is contained in:
Mark Andrews
2013-09-19 10:40:38 +10:00
parent 6c57978413
commit 88a6dc33b7
5 changed files with 64 additions and 2 deletions

View File

@@ -815,6 +815,10 @@ ret=0
$DIG $DIGOPTS @10.53.0.3 -p 5300 dnskey externalkey > dig.out.ns3.test$n
for alg in 3 7 12 13
do
if test $alg = 3
then
sh checkdsa.sh 2>/dev/null || continue;
fi
if test $alg = 12
then
sh ../gost/prereq.sh 2>/dev/null || continue;
@@ -822,9 +826,19 @@ do
if test $alg = 13
then
sh ../ecdsa/prereq.sh 2>/dev/null || continue;
# dsa and ecdsa both require a source of randomness when
# generating signatures
sh checkdsa.sh 2>/dev/null || continue;
fi
test $alg = 3 -a ! -r /dev/random -a ! -r /dev/urandom && continue
echo "I: checking $alg"
case $alg in
3) echo "I: checking DSA";;
7) echo "I: checking NSEC3RSASHA1";;
12) echo "I: checking GOST";;
13) echo "I: checking ECDSAP256SHA256";;
*) echo "I: checking $alg";;
esac
dnskeys=`grep "IN.DNSKEY.25[67] [0-9]* $alg " dig.out.ns3.test$n | wc -l`
rrsigs=`grep "RRSIG.DNSKEY $alg " dig.out.ns3.test$n | wc -l`