diff options
author | Matt Hauck <matt.hauck@tanium.com> | 2016-07-13 11:27:40 -0700 |
---|---|---|
committer | Richard Levitte <levitte@openssl.org> | 2017-02-09 23:39:40 +0100 |
commit | 28903862fb0d6351dd88522950375ed44c10d1ba (patch) | |
tree | 880d15c8436366a25150e8793fb9bb46aef30325 /crypto/mem.c | |
parent | 348681ff2b30453eb03ce2d83022ef069d86877d (diff) |
Fix statically linked engine initialization w/ fips
This only manifested itself with FIPS enabled statically linked
engines. The OPENSSL_init call ended up invoking RAND_init_fips
for a FIPS enabled build, which called CRYPTO_malloc, resulting in
disallowing the engine to finish its IMPLEMENT_DYNAMIC_BIND_FN call.
(Merged from https://github.com/openssl/openssl/pull/1308)Reviewed-by: Geoff Thorpe <geoff@openssl.org>
Reviewed-by: Richard Levitte <levitte@openssl.org>
CLA: trivial
(Merged from https://github.com/openssl/openssl/pull/1308)
Diffstat (limited to 'crypto/mem.c')
-rw-r--r-- | crypto/mem.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/crypto/mem.c b/crypto/mem.c index 06c3960cc6..dd4c9ce9e0 100644 --- a/crypto/mem.c +++ b/crypto/mem.c @@ -150,12 +150,12 @@ static long (*get_debug_options_func) (void) = NULL; int CRYPTO_set_mem_functions(void *(*m) (size_t), void *(*r) (void *, size_t), void (*f) (void *)) { - /* Dummy call just to ensure OPENSSL_init() gets linked in */ - OPENSSL_init(); if (!allow_customize) return 0; if ((m == 0) || (r == 0) || (f == 0)) return 0; + /* Dummy call just to ensure OPENSSL_init() gets linked in */ + OPENSSL_init(); malloc_func = m; malloc_ex_func = default_malloc_ex; realloc_func = r; |