NULL, NULL,
(X509V3_EXT_I2V)i2v_AUTHORITY_KEYID,
(X509V3_EXT_V2I)v2i_AUTHORITY_KEYID,
-NULL,
+NULL,NULL,
NULL
};
NULL, NULL,
(X509V3_EXT_I2V)i2v_GENERAL_NAMES,
(X509V3_EXT_V2I)v2i_subject_alt,
-NULL, NULL},
+NULL, NULL, NULL},
{ NID_issuer_alt_name, 0,
(X509V3_EXT_NEW)GENERAL_NAMES_new,
GENERAL_NAMES_free,
NULL, NULL,
(X509V3_EXT_I2V)i2v_GENERAL_NAMES,
(X509V3_EXT_V2I)v2i_issuer_alt,
-NULL, NULL},
+NULL, NULL, NULL},
EXT_END
};
NULL, NULL,
(X509V3_EXT_I2V)i2v_BASIC_CONSTRAINTS,
(X509V3_EXT_V2I)v2i_BASIC_CONSTRAINTS,
-NULL,
+NULL,NULL,
NULL
};
i2d_ASN1_ENUMERATED,
(X509V3_EXT_I2S)i2s_ASN1_ENUMERATED_TABLE,
(X509V3_EXT_S2I)NULL,
-NULL, NULL, NULL, (char *)crl_reasons};
+NULL, NULL, NULL, NULL, (char *)crl_reasons};
static ASN1_ENUMERATED *asn1_enumerated_new()
NULL, NULL,
(X509V3_EXT_I2V)i2v_ext_ku,
(X509V3_EXT_V2I)v2i_ext_ku,
-NULL,
+NULL,NULL,
NULL
};
i2d_ASN1_INTEGER,
(X509V3_EXT_I2S)i2s_ASN1_INTEGER,
(X509V3_EXT_S2I)NULL,
-NULL, NULL, NULL, NULL};
+NULL, NULL, NULL, NULL, NULL};
static ASN1_INTEGER *asn1_integer_new()
(X509V3_EXT_D2I)d2i_PKEY_USAGE_PERIOD,
i2d_PKEY_USAGE_PERIOD,
NULL, NULL, NULL, NULL,
-(X509V3_EXT_I2R)i2r_PKEY_USAGE_PERIOD,
+(X509V3_EXT_I2R)i2r_PKEY_USAGE_PERIOD, NULL,
NULL
};
i2d_ASN1_OCTET_STRING,
(X509V3_EXT_I2S)i2s_ASN1_OCTET_STRING,
(X509V3_EXT_S2I)s2i_skey_id,
-NULL, NULL, NULL, NULL};
+NULL, NULL, NULL, NULL, NULL};
static ASN1_OCTET_STRING *octet_string_new(void)
typedef char * (*X509V3_EXT_I2S)(struct v3_ext_method *method, char *ext);
typedef char * (*X509V3_EXT_S2I)(struct v3_ext_method *method, struct v3_ext_ctx *ctx, char *str);
typedef int (*X509V3_EXT_I2R)(struct v3_ext_method *method, char *ext, BIO *out);
+typedef char *(*X509V3_EXT_R2I)(struct v3_ext_method *method, char *db, char *value);
/* V3 extension structure */
X509V3_EXT_I2V i2v;
X509V3_EXT_V2I v2i;
-/* The following is used for raw extensions */
+/* The following are used for raw extensions */
X509V3_EXT_I2R i2r;
+X509V3_EXT_R2I r2i; /* Doesn't do anything *YET* */
char *usr_data; /* Any extension specific data */
};
NULL, NULL, \
(X509V3_EXT_I2V)i2v_ASN1_BIT_STRING, \
(X509V3_EXT_V2I)v2i_ASN1_BIT_STRING, \
- NULL, \
+ NULL, NULL, \
(char *)table}
#define EXT_IA5STRING(nid) { nid, 0, \
i2d_ASN1_IA5STRING, \
(X509V3_EXT_I2S)i2s_ASN1_IA5STRING, \
(X509V3_EXT_S2I)s2i_ASN1_IA5STRING, \
- NULL, NULL, NULL, \
+ NULL, NULL, NULL, NULL, \
NULL}
#define EXT_END { -1, 0, NULL, NULL, NULL, NULL, NULL, NULL, \
- NULL, NULL, NULL, \
+ NULL, NULL, NULL, NULL, \
NULL}
#ifndef NOPROTO