NETSCAPE_SPKI_b64_encode: free der_spki and b64_str on error path
authorJonas Maebe <jonas.maebe@elis.ugent.be>
Sun, 8 Dec 2013 21:46:44 +0000 (22:46 +0100)
committerKurt Roeckx <kurt@roeckx.be>
Sun, 17 Aug 2014 16:55:12 +0000 (18:55 +0200)
Signed-off-by: Kurt Roeckx <kurt@openssl.org>
Reviewed-by: Dr. Stephen Henson <steve@openssl.org>
crypto/x509/x509spki.c

index 02a203d72c61de52417ee657f5377fd815edb545..5addcc8cd88c682e3f3484e2b36e9a7166e532a8 100644 (file)
@@ -111,6 +111,10 @@ char * NETSCAPE_SPKI_b64_encode(NETSCAPE_SPKI *spki)
        b64_str = OPENSSL_malloc(der_len * 2);
        if(!der_spki || !b64_str) {
                X509err(X509_F_NETSCAPE_SPKI_B64_ENCODE, ERR_R_MALLOC_FAILURE);
        b64_str = OPENSSL_malloc(der_len * 2);
        if(!der_spki || !b64_str) {
                X509err(X509_F_NETSCAPE_SPKI_B64_ENCODE, ERR_R_MALLOC_FAILURE);
+               if (der_spki != NULL)
+                       OPENSSL_free(der_spki);
+               if (b64_str != NULL)
+                       OPENSSL_free(b64_str);
                return NULL;
        }
        p = der_spki;
                return NULL;
        }
        p = der_spki;