The new ASN1 code automatically allocates
[openssl.git] / crypto / x509v3 / v3_info.c
index b7e793ada14b22a542d83baaa5030568a0bec440..e1cf01a9b46830ad2137809a6b0a36d6522437f5 100644 (file)
@@ -78,6 +78,15 @@ X509V3_EXT_METHOD v3_info =
 0,0,
 NULL};
 
+X509V3_EXT_METHOD v3_sinfo =
+{ NID_sinfo_access, X509V3_EXT_MULTILINE, ASN1_ITEM_ref(AUTHORITY_INFO_ACCESS),
+0,0,0,0,
+0,0,
+(X509V3_EXT_I2V)i2v_AUTHORITY_INFO_ACCESS,
+(X509V3_EXT_V2I)v2i_AUTHORITY_INFO_ACCESS,
+0,0,
+NULL};
+
 ASN1_SEQUENCE(ACCESS_DESCRIPTION) = {
        ASN1_SIMPLE(ACCESS_DESCRIPTION, method, ASN1_OBJECT),
        ASN1_SIMPLE(ACCESS_DESCRIPTION, location, GENERAL_NAME)
@@ -149,6 +158,7 @@ static AUTHORITY_INFO_ACCESS *v2i_AUTHORITY_INFO_ACCESS(X509V3_EXT_METHOD *metho
                objlen = ptmp - cnf->name;
                ctmp.name = ptmp + 1;
                ctmp.value = cnf->value;
+               GENERAL_NAME_free(acc->location);
                if(!(acc->location = v2i_GENERAL_NAME(method, ctx, &ctmp)))
                                                                 goto err; 
                if(!(objtmp = OPENSSL_malloc(objlen + 1))) {