| Index: openssl/crypto/x509v3/x509v3.h
|
| ===================================================================
|
| --- openssl/crypto/x509v3/x509v3.h (revision 105093)
|
| +++ openssl/crypto/x509v3/x509v3.h (working copy)
|
| @@ -76,12 +76,19 @@
|
| typedef void (*X509V3_EXT_FREE)(void *);
|
| typedef void * (*X509V3_EXT_D2I)(void *, const unsigned char ** , long);
|
| typedef int (*X509V3_EXT_I2D)(void *, unsigned char **);
|
| -typedef STACK_OF(CONF_VALUE) * (*X509V3_EXT_I2V)(struct v3_ext_method *method, void *ext, STACK_OF(CONF_VALUE) *extlist);
|
| -typedef void * (*X509V3_EXT_V2I)(struct v3_ext_method *method, struct v3_ext_ctx *ctx, STACK_OF(CONF_VALUE) *values);
|
| -typedef char * (*X509V3_EXT_I2S)(struct v3_ext_method *method, void *ext);
|
| -typedef void * (*X509V3_EXT_S2I)(struct v3_ext_method *method, struct v3_ext_ctx *ctx, const char *str);
|
| -typedef int (*X509V3_EXT_I2R)(struct v3_ext_method *method, void *ext, BIO *out, int indent);
|
| -typedef void * (*X509V3_EXT_R2I)(struct v3_ext_method *method, struct v3_ext_ctx *ctx, const char *str);
|
| +typedef STACK_OF(CONF_VALUE) *
|
| + (*X509V3_EXT_I2V)(const struct v3_ext_method *method, void *ext,
|
| + STACK_OF(CONF_VALUE) *extlist);
|
| +typedef void * (*X509V3_EXT_V2I)(const struct v3_ext_method *method,
|
| + struct v3_ext_ctx *ctx,
|
| + STACK_OF(CONF_VALUE) *values);
|
| +typedef char * (*X509V3_EXT_I2S)(const struct v3_ext_method *method, void *ext);
|
| +typedef void * (*X509V3_EXT_S2I)(const struct v3_ext_method *method,
|
| + struct v3_ext_ctx *ctx, const char *str);
|
| +typedef int (*X509V3_EXT_I2R)(const struct v3_ext_method *method, void *ext,
|
| + BIO *out, int indent);
|
| +typedef void * (*X509V3_EXT_R2I)(const struct v3_ext_method *method,
|
| + struct v3_ext_ctx *ctx, const char *str);
|
|
|
| /* V3 extension structure */
|
|
|
| @@ -220,24 +227,41 @@
|
| GENERAL_NAMES *fullname;
|
| STACK_OF(X509_NAME_ENTRY) *relativename;
|
| } name;
|
| +/* If relativename then this contains the full distribution point name */
|
| +X509_NAME *dpname;
|
| } DIST_POINT_NAME;
|
| +/* All existing reasons */
|
| +#define CRLDP_ALL_REASONS 0x807f
|
|
|
| -typedef struct DIST_POINT_st {
|
| +#define CRL_REASON_NONE -1
|
| +#define CRL_REASON_UNSPECIFIED 0
|
| +#define CRL_REASON_KEY_COMPROMISE 1
|
| +#define CRL_REASON_CA_COMPROMISE 2
|
| +#define CRL_REASON_AFFILIATION_CHANGED 3
|
| +#define CRL_REASON_SUPERSEDED 4
|
| +#define CRL_REASON_CESSATION_OF_OPERATION 5
|
| +#define CRL_REASON_CERTIFICATE_HOLD 6
|
| +#define CRL_REASON_REMOVE_FROM_CRL 8
|
| +#define CRL_REASON_PRIVILEGE_WITHDRAWN 9
|
| +#define CRL_REASON_AA_COMPROMISE 10
|
| +
|
| +struct DIST_POINT_st {
|
| DIST_POINT_NAME *distpoint;
|
| ASN1_BIT_STRING *reasons;
|
| GENERAL_NAMES *CRLissuer;
|
| -} DIST_POINT;
|
| +int dp_reasons;
|
| +};
|
|
|
| typedef STACK_OF(DIST_POINT) CRL_DIST_POINTS;
|
|
|
| DECLARE_STACK_OF(DIST_POINT)
|
| DECLARE_ASN1_SET_OF(DIST_POINT)
|
|
|
| -typedef struct AUTHORITY_KEYID_st {
|
| +struct AUTHORITY_KEYID_st {
|
| ASN1_OCTET_STRING *keyid;
|
| GENERAL_NAMES *issuer;
|
| ASN1_INTEGER *serial;
|
| -} AUTHORITY_KEYID;
|
| +};
|
|
|
| /* Strong extranet structures */
|
|
|
| @@ -303,10 +327,10 @@
|
|
|
| DECLARE_STACK_OF(GENERAL_SUBTREE)
|
|
|
| -typedef struct NAME_CONSTRAINTS_st {
|
| +struct NAME_CONSTRAINTS_st {
|
| STACK_OF(GENERAL_SUBTREE) *permittedSubtrees;
|
| STACK_OF(GENERAL_SUBTREE) *excludedSubtrees;
|
| -} NAME_CONSTRAINTS;
|
| +};
|
|
|
| typedef struct POLICY_CONSTRAINTS_st {
|
| ASN1_INTEGER *requireExplicitPolicy;
|
| @@ -329,7 +353,32 @@
|
| DECLARE_ASN1_FUNCTIONS(PROXY_POLICY)
|
| DECLARE_ASN1_FUNCTIONS(PROXY_CERT_INFO_EXTENSION)
|
|
|
| +struct ISSUING_DIST_POINT_st
|
| + {
|
| + DIST_POINT_NAME *distpoint;
|
| + int onlyuser;
|
| + int onlyCA;
|
| + ASN1_BIT_STRING *onlysomereasons;
|
| + int indirectCRL;
|
| + int onlyattr;
|
| + };
|
|
|
| +/* Values in idp_flags field */
|
| +/* IDP present */
|
| +#define IDP_PRESENT 0x1
|
| +/* IDP values inconsistent */
|
| +#define IDP_INVALID 0x2
|
| +/* onlyuser true */
|
| +#define IDP_ONLYUSER 0x4
|
| +/* onlyCA true */
|
| +#define IDP_ONLYCA 0x8
|
| +/* onlyattr true */
|
| +#define IDP_ONLYATTR 0x10
|
| +/* indirectCRL true */
|
| +#define IDP_INDIRECT 0x20
|
| +/* onlysomereasons present */
|
| +#define IDP_REASONS 0x40
|
| +
|
| #define X509V3_conf_err(val) ERR_add_error_data(6, "section:", val->section, \
|
| ",name:", val->name, ",value:", val->value);
|
|
|
| @@ -373,6 +422,7 @@
|
| #define EXFLAG_PROXY 0x400
|
|
|
| #define EXFLAG_INVALID_POLICY 0x800
|
| +#define EXFLAG_FRESHEST 0x1000
|
|
|
| #define KU_DIGITAL_SIGNATURE 0x0080
|
| #define KU_NON_REPUDIATION 0x0040
|
| @@ -424,9 +474,10 @@
|
| #define X509_PURPOSE_CRL_SIGN 6
|
| #define X509_PURPOSE_ANY 7
|
| #define X509_PURPOSE_OCSP_HELPER 8
|
| +#define X509_PURPOSE_TIMESTAMP_SIGN 9
|
|
|
| #define X509_PURPOSE_MIN 1
|
| -#define X509_PURPOSE_MAX 8
|
| +#define X509_PURPOSE_MAX 9
|
|
|
| /* Flags for X509V3_EXT_print() */
|
|
|
| @@ -471,8 +522,11 @@
|
| DECLARE_ASN1_FUNCTIONS(PKEY_USAGE_PERIOD)
|
|
|
| DECLARE_ASN1_FUNCTIONS(GENERAL_NAME)
|
| +GENERAL_NAME *GENERAL_NAME_dup(GENERAL_NAME *a);
|
| +int GENERAL_NAME_cmp(GENERAL_NAME *a, GENERAL_NAME *b);
|
|
|
|
|
| +
|
| ASN1_BIT_STRING *v2i_ASN1_BIT_STRING(X509V3_EXT_METHOD *method,
|
| X509V3_CTX *ctx, STACK_OF(CONF_VALUE) *nval);
|
| STACK_OF(CONF_VALUE) *i2v_ASN1_BIT_STRING(X509V3_EXT_METHOD *method,
|
| @@ -486,11 +540,18 @@
|
|
|
| STACK_OF(CONF_VALUE) *i2v_GENERAL_NAMES(X509V3_EXT_METHOD *method,
|
| GENERAL_NAMES *gen, STACK_OF(CONF_VALUE) *extlist);
|
| -GENERAL_NAMES *v2i_GENERAL_NAMES(X509V3_EXT_METHOD *method,
|
| - X509V3_CTX *ctx, STACK_OF(CONF_VALUE) *nval);
|
| +GENERAL_NAMES *v2i_GENERAL_NAMES(const X509V3_EXT_METHOD *method,
|
| + X509V3_CTX *ctx, STACK_OF(CONF_VALUE) *nval);
|
|
|
| DECLARE_ASN1_FUNCTIONS(OTHERNAME)
|
| DECLARE_ASN1_FUNCTIONS(EDIPARTYNAME)
|
| +int OTHERNAME_cmp(OTHERNAME *a, OTHERNAME *b);
|
| +void GENERAL_NAME_set0_value(GENERAL_NAME *a, int type, void *value);
|
| +void *GENERAL_NAME_get0_value(GENERAL_NAME *a, int *ptype);
|
| +int GENERAL_NAME_set0_othername(GENERAL_NAME *gen,
|
| + ASN1_OBJECT *oid, ASN1_TYPE *value);
|
| +int GENERAL_NAME_get0_otherName(GENERAL_NAME *gen,
|
| + ASN1_OBJECT **poid, ASN1_TYPE **pvalue);
|
|
|
| char *i2s_ASN1_OCTET_STRING(X509V3_EXT_METHOD *method, ASN1_OCTET_STRING *ia5);
|
| ASN1_OCTET_STRING *s2i_ASN1_OCTET_STRING(X509V3_EXT_METHOD *method, X509V3_CTX *ctx, char *str);
|
| @@ -507,7 +568,12 @@
|
| DECLARE_ASN1_FUNCTIONS(CRL_DIST_POINTS)
|
| DECLARE_ASN1_FUNCTIONS(DIST_POINT)
|
| DECLARE_ASN1_FUNCTIONS(DIST_POINT_NAME)
|
| +DECLARE_ASN1_FUNCTIONS(ISSUING_DIST_POINT)
|
|
|
| +int DIST_POINT_set_dpname(DIST_POINT_NAME *dpn, X509_NAME *iname);
|
| +
|
| +int NAME_CONSTRAINTS_check(X509 *x, NAME_CONSTRAINTS *nc);
|
| +
|
| DECLARE_ASN1_FUNCTIONS(ACCESS_DESCRIPTION)
|
| DECLARE_ASN1_FUNCTIONS(AUTHORITY_INFO_ACCESS)
|
|
|
| @@ -524,11 +590,16 @@
|
| DECLARE_ASN1_ALLOC_FUNCTIONS(POLICY_CONSTRAINTS)
|
| DECLARE_ASN1_ITEM(POLICY_CONSTRAINTS)
|
|
|
| +GENERAL_NAME *a2i_GENERAL_NAME(GENERAL_NAME *out,
|
| + const X509V3_EXT_METHOD *method, X509V3_CTX *ctx,
|
| + int gen_type, char *value, int is_nc);
|
| +
|
| #ifdef HEADER_CONF_H
|
| -GENERAL_NAME *v2i_GENERAL_NAME(X509V3_EXT_METHOD *method, X509V3_CTX *ctx,
|
| - CONF_VALUE *cnf);
|
| -GENERAL_NAME *v2i_GENERAL_NAME_ex(GENERAL_NAME *out, X509V3_EXT_METHOD *method,
|
| - X509V3_CTX *ctx, CONF_VALUE *cnf, int is_nc);
|
| +GENERAL_NAME *v2i_GENERAL_NAME(const X509V3_EXT_METHOD *method, X509V3_CTX *ctx,
|
| + CONF_VALUE *cnf);
|
| +GENERAL_NAME *v2i_GENERAL_NAME_ex(GENERAL_NAME *out,
|
| + const X509V3_EXT_METHOD *method,
|
| + X509V3_CTX *ctx, CONF_VALUE *cnf, int is_nc);
|
| void X509V3_conf_free(CONF_VALUE *val);
|
|
|
| X509_EXTENSION *X509V3_EXT_nconf_nid(CONF *conf, X509V3_CTX *ctx, int ext_nid, char *value);
|
| @@ -538,18 +609,23 @@
|
| int X509V3_EXT_REQ_add_nconf(CONF *conf, X509V3_CTX *ctx, char *section, X509_REQ *req);
|
| int X509V3_EXT_CRL_add_nconf(CONF *conf, X509V3_CTX *ctx, char *section, X509_CRL *crl);
|
|
|
| -X509_EXTENSION *X509V3_EXT_conf_nid(LHASH *conf, X509V3_CTX *ctx, int ext_nid, char *value);
|
| -X509_EXTENSION *X509V3_EXT_conf(LHASH *conf, X509V3_CTX *ctx, char *name, char *value);
|
| -int X509V3_EXT_add_conf(LHASH *conf, X509V3_CTX *ctx, char *section, X509 *cert);
|
| -int X509V3_EXT_REQ_add_conf(LHASH *conf, X509V3_CTX *ctx, char *section, X509_REQ *req);
|
| -int X509V3_EXT_CRL_add_conf(LHASH *conf, X509V3_CTX *ctx, char *section, X509_CRL *crl);
|
| +X509_EXTENSION *X509V3_EXT_conf_nid(LHASH_OF(CONF_VALUE) *conf, X509V3_CTX *ctx,
|
| + int ext_nid, char *value);
|
| +X509_EXTENSION *X509V3_EXT_conf(LHASH_OF(CONF_VALUE) *conf, X509V3_CTX *ctx,
|
| + char *name, char *value);
|
| +int X509V3_EXT_add_conf(LHASH_OF(CONF_VALUE) *conf, X509V3_CTX *ctx,
|
| + char *section, X509 *cert);
|
| +int X509V3_EXT_REQ_add_conf(LHASH_OF(CONF_VALUE) *conf, X509V3_CTX *ctx,
|
| + char *section, X509_REQ *req);
|
| +int X509V3_EXT_CRL_add_conf(LHASH_OF(CONF_VALUE) *conf, X509V3_CTX *ctx,
|
| + char *section, X509_CRL *crl);
|
|
|
| int X509V3_add_value_bool_nf(char *name, int asn1_bool,
|
| - STACK_OF(CONF_VALUE) **extlist);
|
| + STACK_OF(CONF_VALUE) **extlist);
|
| int X509V3_get_value_bool(CONF_VALUE *value, int *asn1_bool);
|
| int X509V3_get_value_int(CONF_VALUE *value, ASN1_INTEGER **aint);
|
| void X509V3_set_nconf(X509V3_CTX *ctx, CONF *conf);
|
| -void X509V3_set_conf_lhash(X509V3_CTX *ctx, LHASH *lhash);
|
| +void X509V3_set_conf_lhash(X509V3_CTX *ctx, LHASH_OF(CONF_VALUE) *lhash);
|
| #endif
|
|
|
| char * X509V3_get_string(X509V3_CTX *ctx, char *name, char *section);
|
| @@ -576,8 +652,8 @@
|
| int X509V3_EXT_add_alias(int nid_to, int nid_from);
|
| void X509V3_EXT_cleanup(void);
|
|
|
| -X509V3_EXT_METHOD *X509V3_EXT_get(X509_EXTENSION *ext);
|
| -X509V3_EXT_METHOD *X509V3_EXT_get_nid(int nid);
|
| +const X509V3_EXT_METHOD *X509V3_EXT_get(X509_EXTENSION *ext);
|
| +const X509V3_EXT_METHOD *X509V3_EXT_get_nid(int nid);
|
| int X509V3_add_standard_extensions(void);
|
| STACK_OF(CONF_VALUE) *X509V3_parse_list(const char *line);
|
| void *X509V3_EXT_d2i(X509_EXTENSION *ext);
|
| @@ -587,8 +663,8 @@
|
| X509_EXTENSION *X509V3_EXT_i2d(int ext_nid, int crit, void *ext_struc);
|
| int X509V3_add1_i2d(STACK_OF(X509_EXTENSION) **x, int nid, void *value, int crit, unsigned long flags);
|
|
|
| -char *hex_to_string(unsigned char *buffer, long len);
|
| -unsigned char *string_to_hex(char *str, long *len);
|
| +char *hex_to_string(const unsigned char *buffer, long len);
|
| +unsigned char *string_to_hex(const char *str, long *len);
|
| int name_cmp(const char *name, const char *cmp);
|
|
|
| void X509V3_EXT_val_prn(BIO *out, STACK_OF(CONF_VALUE) *val, int indent,
|
| @@ -603,6 +679,7 @@
|
| int X509_supported_extension(X509_EXTENSION *ex);
|
| int X509_PURPOSE_set(int *p, int purpose);
|
| int X509_check_issued(X509 *issuer, X509 *subject);
|
| +int X509_check_akid(X509 *issuer, AUTHORITY_KEYID *akid);
|
| int X509_PURPOSE_get_count(void);
|
| X509_PURPOSE * X509_PURPOSE_get0(int idx);
|
| int X509_PURPOSE_get_by_sname(char *sname);
|
| @@ -616,10 +693,10 @@
|
| void X509_PURPOSE_cleanup(void);
|
| int X509_PURPOSE_get_id(X509_PURPOSE *);
|
|
|
| -STACK *X509_get1_email(X509 *x);
|
| -STACK *X509_REQ_get1_email(X509_REQ *x);
|
| -void X509_email_free(STACK *sk);
|
| -STACK *X509_get1_ocsp(X509 *x);
|
| +STACK_OF(OPENSSL_STRING) *X509_get1_email(X509 *x);
|
| +STACK_OF(OPENSSL_STRING) *X509_REQ_get1_email(X509_REQ *x);
|
| +void X509_email_free(STACK_OF(OPENSSL_STRING) *sk);
|
| +STACK_OF(OPENSSL_STRING) *X509_get1_ocsp(X509 *x);
|
|
|
| ASN1_OCTET_STRING *a2i_IPADDRESS(const char *ipasc);
|
| ASN1_OCTET_STRING *a2i_IPADDRESS_NC(const char *ipasc);
|
| @@ -628,6 +705,7 @@
|
| unsigned long chtype);
|
|
|
| void X509_POLICY_NODE_print(BIO *out, X509_POLICY_NODE *node, int indent);
|
| +DECLARE_STACK_OF(X509_POLICY_NODE)
|
|
|
| #ifndef OPENSSL_NO_RFC3779
|
|
|
| @@ -787,8 +865,9 @@
|
| /* Error codes for the X509V3 functions. */
|
|
|
| /* Function codes. */
|
| -#define X509V3_F_ASIDENTIFIERCHOICE_CANONIZE 156
|
| -#define X509V3_F_ASIDENTIFIERCHOICE_IS_CANONICAL 157
|
| +#define X509V3_F_A2I_GENERAL_NAME 164
|
| +#define X509V3_F_ASIDENTIFIERCHOICE_CANONIZE 161
|
| +#define X509V3_F_ASIDENTIFIERCHOICE_IS_CANONICAL 162
|
| #define X509V3_F_COPY_EMAIL 122
|
| #define X509V3_F_COPY_ISSUER 123
|
| #define X509V3_F_DO_DIRNAME 144
|
| @@ -796,6 +875,7 @@
|
| #define X509V3_F_DO_EXT_I2D 135
|
| #define X509V3_F_DO_EXT_NCONF 151
|
| #define X509V3_F_DO_I2V_NAME_CONSTRAINTS 148
|
| +#define X509V3_F_GNAMES_FROM_SECTNAME 156
|
| #define X509V3_F_HEX_TO_STRING 111
|
| #define X509V3_F_I2S_ASN1_ENUMERATED 121
|
| #define X509V3_F_I2S_ASN1_IA5STRING 149
|
| @@ -812,13 +892,14 @@
|
| #define X509V3_F_S2I_ASN1_OCTET_STRING 112
|
| #define X509V3_F_S2I_ASN1_SKEY_ID 114
|
| #define X509V3_F_S2I_SKEY_ID 115
|
| +#define X509V3_F_SET_DIST_POINT_NAME 158
|
| #define X509V3_F_STRING_TO_HEX 113
|
| #define X509V3_F_SXNET_ADD_ID_ASC 125
|
| #define X509V3_F_SXNET_ADD_ID_INTEGER 126
|
| #define X509V3_F_SXNET_ADD_ID_ULONG 127
|
| #define X509V3_F_SXNET_GET_ID_ASC 128
|
| #define X509V3_F_SXNET_GET_ID_ULONG 129
|
| -#define X509V3_F_V2I_ASIDENTIFIERS 158
|
| +#define X509V3_F_V2I_ASIDENTIFIERS 163
|
| #define X509V3_F_V2I_ASN1_BIT_STRING 101
|
| #define X509V3_F_V2I_AUTHORITY_INFO_ACCESS 139
|
| #define X509V3_F_V2I_AUTHORITY_KEYID 119
|
| @@ -827,6 +908,7 @@
|
| #define X509V3_F_V2I_EXTENDED_KEY_USAGE 103
|
| #define X509V3_F_V2I_GENERAL_NAMES 118
|
| #define X509V3_F_V2I_GENERAL_NAME_EX 117
|
| +#define X509V3_F_V2I_IDP 157
|
| #define X509V3_F_V2I_IPADDRBLOCKS 159
|
| #define X509V3_F_V2I_ISSUER_ALT 153
|
| #define X509V3_F_V2I_NAME_CONSTRAINTS 147
|
| @@ -855,6 +937,7 @@
|
| #define X509V3_R_BN_DEC2BN_ERROR 100
|
| #define X509V3_R_BN_TO_ASN1_INTEGER_ERROR 101
|
| #define X509V3_R_DIRNAME_ERROR 149
|
| +#define X509V3_R_DISTPOINT_ALREADY_SET 160
|
| #define X509V3_R_DUPLICATE_ZONE_ID 133
|
| #define X509V3_R_ERROR_CONVERTING_ZONE 131
|
| #define X509V3_R_ERROR_CREATING_EXTENSION 144
|
| @@ -868,12 +951,13 @@
|
| #define X509V3_R_ILLEGAL_EMPTY_EXTENSION 151
|
| #define X509V3_R_ILLEGAL_HEX_DIGIT 113
|
| #define X509V3_R_INCORRECT_POLICY_SYNTAX_TAG 152
|
| -#define X509V3_R_INVALID_ASNUMBER 160
|
| -#define X509V3_R_INVALID_ASRANGE 161
|
| +#define X509V3_R_INVALID_MULTIPLE_RDNS 161
|
| +#define X509V3_R_INVALID_ASNUMBER 162
|
| +#define X509V3_R_INVALID_ASRANGE 163
|
| #define X509V3_R_INVALID_BOOLEAN_STRING 104
|
| #define X509V3_R_INVALID_EXTENSION_STRING 105
|
| -#define X509V3_R_INVALID_INHERITANCE 162
|
| -#define X509V3_R_INVALID_IPADDRESS 163
|
| +#define X509V3_R_INVALID_INHERITANCE 165
|
| +#define X509V3_R_INVALID_IPADDRESS 166
|
| #define X509V3_R_INVALID_NAME 106
|
| #define X509V3_R_INVALID_NULL_ARGUMENT 107
|
| #define X509V3_R_INVALID_NULL_NAME 108
|
| @@ -901,9 +985,9 @@
|
| #define X509V3_R_ODD_NUMBER_OF_DIGITS 112
|
| #define X509V3_R_OPERATION_NOT_DEFINED 148
|
| #define X509V3_R_OTHERNAME_ERROR 147
|
| -#define X509V3_R_POLICY_LANGUAGE_ALREADTY_DEFINED 155
|
| +#define X509V3_R_POLICY_LANGUAGE_ALREADY_DEFINED 155
|
| #define X509V3_R_POLICY_PATH_LENGTH 156
|
| -#define X509V3_R_POLICY_PATH_LENGTH_ALREADTY_DEFINED 157
|
| +#define X509V3_R_POLICY_PATH_LENGTH_ALREADY_DEFINED 157
|
| #define X509V3_R_POLICY_SYNTAX_NOT_CURRENTLY_SUPPORTED 158
|
| #define X509V3_R_POLICY_WHEN_PROXY_LANGUAGE_REQUIRES_NO_POLICY 159
|
| #define X509V3_R_SECTION_NOT_FOUND 150
|
| @@ -914,6 +998,7 @@
|
| #define X509V3_R_UNKNOWN_EXTENSION_NAME 130
|
| #define X509V3_R_UNKNOWN_OPTION 120
|
| #define X509V3_R_UNSUPPORTED_OPTION 117
|
| +#define X509V3_R_UNSUPPORTED_TYPE 167
|
| #define X509V3_R_USER_TOO_LONG 132
|
|
|
| #ifdef __cplusplus
|
|
|