aboutsummaryrefslogtreecommitdiffstats
path: root/crypto
diff options
context:
space:
mode:
authorPauli <paul.dale@oracle.com>2020-12-09 19:55:08 +1000
committerPauli <paul.dale@oracle.com>2020-12-09 22:28:52 +1000
commit1d180bbe8e2103f35328cf82fbde7fd23602735a (patch)
treed6d0be71a63c5eff479753af58cfce38455dde26 /crypto
parenta678506e2fa1826fc3a836b66fe9110f29306a32 (diff)
downloadopenssl-1d180bbe8e2103f35328cf82fbde7fd23602735a.tar.gz
rand: allow seed-src to be missing
Reviewed-by: Richard Levitte <levitte@openssl.org> Reviewed-by: Tomas Mraz <tmraz@fedoraproject.org> (Merged from https://github.com/openssl/openssl/pull/13640)
Diffstat (limited to 'crypto')
-rw-r--r--crypto/rand/rand_lib.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/crypto/rand/rand_lib.c b/crypto/rand/rand_lib.c
index 2ad3cf776f..f0284aab08 100644
--- a/crypto/rand/rand_lib.c
+++ b/crypto/rand/rand_lib.c
@@ -561,8 +561,11 @@ EVP_RAND_CTX *RAND_get0_primary(OSSL_LIB_CTX *ctx)
if (!CRYPTO_THREAD_write_lock(dgbl->lock))
return NULL;
#ifndef FIPS_MODULE
- if (dgbl->seed == NULL)
+ if (dgbl->seed == NULL) {
+ ERR_set_mark();
dgbl->seed = rand_new_seed(ctx);
+ ERR_pop_to_mark();
+ }
#endif
if (dgbl->primary == NULL)
dgbl->primary = rand_new_drbg(ctx, dgbl->seed,