pseudo-seed for the PRNG before testing DSA
diff --git a/apps/speed.c b/apps/speed.c
index b3130de..f7a8e00 100644
--- a/apps/speed.c
+++ b/apps/speed.c
@@ -1030,6 +1030,11 @@
RAND_pseudo_bytes(buf,20);
#ifndef NO_DSA
+ if (RAND_status() != 1)
+ {
+ RAND_seed(rnd_seed, sizeof rnd_seed);
+ rnd_fake = 1;
+ }
for (j=0; j<DSA_NUM; j++)
{
unsigned int kk;
@@ -1089,6 +1094,7 @@
dsa_doit[j]=0;
}
}
+ if (rnd_fake) RAND_cleanup();
#endif
fprintf(stdout,"%s\n",SSLeay_version(SSLEAY_VERSION));
diff --git a/apps/testdsa.h b/apps/testdsa.h
index a322978..4a453d4 100644
--- a/apps/testdsa.h
+++ b/apps/testdsa.h
@@ -146,3 +146,5 @@
return(dsa);
}
+static const char rnd_seed[] = "string to make the random number generator think it has entropy";
+static int rnd_fake = 0;