dlfcn: always define _GNU_SOURCE
[oweals/openssl.git] / crypto / x509 / x509spki.c
index 4c3af946ec731a2ccd2b46560a2288fa10848785..5addcc8cd88c682e3f3484e2b36e9a7166e532a8 100644 (file)
@@ -1,5 +1,5 @@
 /* x509spki.c */
-/* Written by Dr Stephen N Henson (shenson@bigfoot.com) for the OpenSSL
+/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL
  * project 1999.
  */
 /* ====================================================================
@@ -77,7 +77,8 @@ EVP_PKEY *NETSCAPE_SPKI_get_pubkey(NETSCAPE_SPKI *x)
 
 NETSCAPE_SPKI * NETSCAPE_SPKI_b64_decode(const char *str, int len)
 {
-       unsigned char *spki_der, *p;
+       unsigned char *spki_der;
+       const unsigned char *p;
        int spki_len;
        NETSCAPE_SPKI *spki;
        if(len <= 0) len = strlen(str);
@@ -110,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);
+               if (der_spki != NULL)
+                       OPENSSL_free(der_spki);
+               if (b64_str != NULL)
+                       OPENSSL_free(b64_str);
                return NULL;
        }
        p = der_spki;