From 295aa108ba448c31c8f9549d8719149e1b6b985a Mon Sep 17 00:00:00 2001 From: Ismo Puustinen Date: Fri, 18 Sep 2015 16:07:23 -0400 Subject: GH367: use random data if seed too short. MIME-Version: 1.0 Content-Type: text/plain; charset=latin1 Content-Transfer-Encoding: 8bit Signed-off-by: Rich Salz Reviewed-by: Emilia Käsper --- crypto/dsa/dsa_gen.c | 2 +- doc/crypto/DSA_generate_parameters.pod | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/crypto/dsa/dsa_gen.c b/crypto/dsa/dsa_gen.c index 5a328aa..9d3b59e 100644 --- a/crypto/dsa/dsa_gen.c +++ b/crypto/dsa/dsa_gen.c @@ -203,7 +203,7 @@ int dsa_builtin_paramgen(DSA *ret, size_t bits, size_t qbits, if (!BN_GENCB_call(cb, 0, m++)) goto err; - if (!seed_len) { + if (!seed_len || !seed_in) { if (RAND_pseudo_bytes(seed, qsize) < 0) goto err; seed_is_random = 1; diff --git a/doc/crypto/DSA_generate_parameters.pod b/doc/crypto/DSA_generate_parameters.pod index 16a67f2..b1a4d20 100644 --- a/doc/crypto/DSA_generate_parameters.pod +++ b/doc/crypto/DSA_generate_parameters.pod @@ -29,7 +29,7 @@ maximum of 1024 bits. If B is B or B E 20, the primes will be generated at random. Otherwise, the seed is used to generate them. If the given seed does not yield a prime q, a new random -seed is chosen and placed at B. +seed is chosen. DSA_generate_parameters_ex() places the iteration count in *B and a counter used for finding a generator in -- 1.7.12.1