Lookup public key ASN1 methods by string by iterating through all
[openssl.git] / crypto / asn1 / x_x509.c
index 73f61e1eb9f894d1d7686a079a1a3c1bb7513717..a3cae2c1289361d58b87a3e19a995730e7230e9f 100644 (file)
@@ -95,6 +95,10 @@ static int x509_cb(int operation, ASN1_VALUE **pval, const ASN1_ITEM *it,
                ret->ex_pathlen = -1;
                ret->skid = NULL;
                ret->akid = NULL;
+#ifndef OPENSSL_NO_RFC3779
+               ret->rfc3779_addr = NULL;
+               ret->rfc3779_asid = NULL;
+#endif
                ret->aux = NULL;
                ret->crldp = NULL;
                CRYPTO_new_ex_data(CRYPTO_EX_INDEX_X509, ret, &ret->ex_data);
@@ -112,6 +116,10 @@ static int x509_cb(int operation, ASN1_VALUE **pval, const ASN1_ITEM *it,
                AUTHORITY_KEYID_free(ret->akid);
                CRL_DIST_POINTS_free(ret->crldp);
                policy_cache_free(ret->policy_cache);
+#ifndef OPENSSL_NO_RFC3779
+               sk_IPAddressFamily_pop_free(ret->rfc3779_addr, IPAddressFamily_free);
+               ASIdentifiers_free(ret->rfc3779_asid);
+#endif
 
                if (ret->name != NULL) OPENSSL_free(ret->name);
                break;