diff options
author | Nikos Mavrogiannopoulos <nmav@gnutls.org> | 2014-04-28 23:14:34 +0200 |
---|---|---|
committer | Nikos Mavrogiannopoulos <nmav@gnutls.org> | 2014-04-28 23:14:34 +0200 |
commit | 8c1563efdc1cd61c09a04232079af189814dfd99 (patch) | |
tree | 65ab7526dae4210d1743ce3f9ba649dd312f6c9b | |
parent | 66451df4e978ce91fc75caa42233034e4fafe3a0 (diff) | |
download | gnutls-8c1563efdc1cd61c09a04232079af189814dfd99.tar.gz |
updated prng test
-rw-r--r-- | tests/suite/rng.c | 7 | ||||
-rwxr-xr-x | tests/suite/testrng | 26 |
2 files changed, 29 insertions, 4 deletions
diff --git a/tests/suite/rng.c b/tests/suite/rng.c index 7396c8c719..019bd8730c 100644 --- a/tests/suite/rng.c +++ b/tests/suite/rng.c @@ -41,15 +41,16 @@ int main(int argc, char **argv) gnutls_global_init(); if (argc != 4) { - fprintf(stderr, "usage: %s [nonce|key] [nbytes] [outfile]\n", argv[0]); + fprintf(stderr, "args %d\nusage: %s [nonce|key] [nbytes] [outfile]\n", argc, argv[0]); exit(1); } - if (strcasecmp(argv[1], "nonce")) { + if (strcasecmp(argv[1], "nonce") == 0) { level = GNUTLS_RND_NONCE; - } else if (strcasecmp(argv[1], "key")) { + } else if (strcasecmp(argv[1], "key") == 0) { level = GNUTLS_RND_KEY; } else { + fprintf(stderr, "don't know %s\n", argv[1]); fprintf(stderr, "usage: %s [nonce|key] [nbytes] [outfile]\n", argv[0]); exit(1); } diff --git a/tests/suite/testrng b/tests/suite/testrng index 07b009dbf9..e49432e757 100755 --- a/tests/suite/testrng +++ b/tests/suite/testrng @@ -32,10 +32,12 @@ else fi OUTFILE=rng.log -RNGFILE=rng.rng +RNGFILE=rng.out +RNGFILE2=rng2.out rm -f $OUTFILE rm -f $RNGFILE +rm -f $RNGFILE2 . $srcdir/../scripts/common.sh @@ -48,6 +50,16 @@ fi echo "Testing nonce PRNG" +./rng nonce 64 $RNGFILE +./rng nonce 64 $RNGFILE2 +cmp $RNGFILE $RNGFILE2 >/dev/null 2>&1 +ret=$? + +if test $ret = 0;then + echo "numbers are repeated in nonce!" + exit 1 +fi + ./rng nonce 100000000 $RNGFILE dieharder -q -f $RNGFILE -g $RINPUTNO $OPTIONS >$OUTFILE 2>&1 @@ -72,6 +84,17 @@ fi rm -f $OUTFILE echo "Testing key PRNG" + +./rng key 64 $RNGFILE +./rng key 64 $RNGFILE2 +cmp $RNGFILE $RNGFILE2 >/dev/null 2>&1 +ret=$? + +if test $ret = 0;then + echo "numbers are repeated in nonce!" + exit 1 +fi + ./rng key 100000000 $RNGFILE dieharder -q -f $RNGFILE -g $RINPUTNO $OPTIONS >$OUTFILE 2>&1 @@ -121,5 +144,6 @@ fi rm -f $OUTFILE rm -f $RNGFILE +rm -f $RNGFILE2 exit 0 |