summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDr. Stephen Henson <steve@openssl.org>2016-09-08 15:10:32 +0100
committerDr. Stephen Henson <steve@openssl.org>2016-09-11 23:52:34 +0100
commit5ecb5467b6960ab41b8f8b45f9380fcba74c3ed8 (patch)
tree4f9043e279b6e120c0ebafa5b460ef6c135b19a0
parent373a56139f910c3ef08f6df2d48ad954a5c3a0f4 (diff)
Fix memory leak on error.
Backport leak fix from master branch. Thanks to Shi Lei for reporting this bug. Reviewed-by: Rich Salz <rsalz@openssl.org>
-rw-r--r--crypto/x509/x509spki.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/crypto/x509/x509spki.c b/crypto/x509/x509spki.c
index 2df84ead9e..5ae5d30a35 100644
--- a/crypto/x509/x509spki.c
+++ b/crypto/x509/x509spki.c
@@ -112,6 +112,8 @@ char *NETSCAPE_SPKI_b64_encode(NETSCAPE_SPKI *spki)
der_spki = OPENSSL_malloc(der_len);
b64_str = OPENSSL_malloc(der_len * 2);
if (!der_spki || !b64_str) {
+ OPENSSL_free(der_spki);
+ OPENSSL_free(b64_str);
X509err(X509_F_NETSCAPE_SPKI_B64_ENCODE, ERR_R_MALLOC_FAILURE);
return NULL;
}