From 67b640135696d4426475fb0c455c094a6c33ee45 Mon Sep 17 00:00:00 2001 From: Richard Levitte Date: Fri, 28 Aug 2020 13:07:35 +0200 Subject: [PATCH] CORE: Fix small bug in passphrase caching Passphrase caching didn't allocate memory when it got to cache an empty string, leading to a crash. Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/12587) --- crypto/passphrase.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/crypto/passphrase.c b/crypto/passphrase.c index ac352697db3..170374f9d9c 100644 --- a/crypto/passphrase.c +++ b/crypto/passphrase.c @@ -273,7 +273,8 @@ int ossl_pw_get_passphrase(char *pass, size_t pass_size, size_t *pass_len, do_cache: if (ret && data->flag_cache_passphrase) { - if (*pass_len > data->cached_passphrase_len) { + if (data->cached_passphrase == NULL + || *pass_len > data->cached_passphrase_len) { void *new_cache = OPENSSL_clear_realloc(data->cached_passphrase, data->cached_passphrase_len, -- 2.47.2