Go to the documentation of this file.
55 #ifndef HEADER_X509V3_H
56 #define HEADER_X509V3_H
63 #if defined(__cplusplus)
82 typedef void *(*X509V3_EXT_NEW)(void);
84 typedef void *(*X509V3_EXT_D2I)(
void *,
const unsigned char **,
long);
153 #define X509V3_EXT_DYNAMIC 0x1
154 #define X509V3_EXT_CTX_DEP 0x2
155 #define X509V3_EXT_MULTILINE 0x4
174 #define GEN_OTHERNAME 0
178 #define GEN_DIRNAME 4
179 #define GEN_EDIPARTY 5
232 #define CRLDP_ALL_REASONS 0x807f
234 #define CRL_REASON_NONE (-1)
235 #define CRL_REASON_UNSPECIFIED 0
236 #define CRL_REASON_KEY_COMPROMISE 1
237 #define CRL_REASON_CA_COMPROMISE 2
238 #define CRL_REASON_AFFILIATION_CHANGED 3
239 #define CRL_REASON_SUPERSEDED 4
240 #define CRL_REASON_CESSATION_OF_OPERATION 5
241 #define CRL_REASON_CERTIFICATE_HOLD 6
242 #define CRL_REASON_REMOVE_FROM_CRL 8
243 #define CRL_REASON_PRIVILEGE_WITHDRAWN 9
244 #define CRL_REASON_AA_COMPROMISE 10
345 #define IDP_PRESENT 0x1
347 #define IDP_INVALID 0x2
349 #define IDP_ONLYUSER 0x4
351 #define IDP_ONLYCA 0x8
353 #define IDP_ONLYATTR 0x10
355 #define IDP_INDIRECT 0x20
357 #define IDP_REASONS 0x40
359 #define X509V3_conf_err(val) \
360 ERR_add_error_data(6, "section:", (val)->section, ",name:", (val)->name, \
361 ",value:", (val)->value);
363 #define X509V3_set_ctx_test(ctx) \
364 X509V3_set_ctx(ctx, NULL, NULL, NULL, NULL, CTX_TEST)
365 #define X509V3_set_ctx_nodb(ctx) (ctx)->db = NULL;
367 #define EXT_BITSTRING(nid, table) \
369 nid, 0, ASN1_ITEM_ref(ASN1_BIT_STRING), 0, 0, 0, 0, 0, 0, \
370 (X509V3_EXT_I2V)i2v_ASN1_BIT_STRING, \
371 (X509V3_EXT_V2I)v2i_ASN1_BIT_STRING, NULL, NULL, (void *)(table) \
374 #define EXT_IA5STRING(nid) \
376 nid, 0, ASN1_ITEM_ref(ASN1_IA5STRING), 0, 0, 0, 0, \
377 (X509V3_EXT_I2S)i2s_ASN1_IA5STRING, \
378 (X509V3_EXT_S2I)s2i_ASN1_IA5STRING, 0, 0, 0, 0, NULL \
382 { -1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
387 #define EXFLAG_BCONS 0x1
388 #define EXFLAG_KUSAGE 0x2
389 #define EXFLAG_XKUSAGE 0x4
390 #define EXFLAG_NSCERT 0x8
392 #define EXFLAG_CA 0x10
394 #define EXFLAG_SI 0x20
395 #define EXFLAG_V1 0x40
396 #define EXFLAG_INVALID 0x80
397 #define EXFLAG_SET 0x100
398 #define EXFLAG_CRITICAL 0x200
399 #define EXFLAG_PROXY 0x400
401 #define EXFLAG_INVALID_POLICY 0x800
402 #define EXFLAG_FRESHEST 0x1000
404 #define EXFLAG_SS 0x2000
406 #define KU_DIGITAL_SIGNATURE 0x0080
407 #define KU_NON_REPUDIATION 0x0040
408 #define KU_KEY_ENCIPHERMENT 0x0020
409 #define KU_DATA_ENCIPHERMENT 0x0010
410 #define KU_KEY_AGREEMENT 0x0008
411 #define KU_KEY_CERT_SIGN 0x0004
412 #define KU_CRL_SIGN 0x0002
413 #define KU_ENCIPHER_ONLY 0x0001
414 #define KU_DECIPHER_ONLY 0x8000
416 #define NS_SSL_CLIENT 0x80
417 #define NS_SSL_SERVER 0x40
418 #define NS_SMIME 0x20
419 #define NS_OBJSIGN 0x10
420 #define NS_SSL_CA 0x04
421 #define NS_SMIME_CA 0x02
422 #define NS_OBJSIGN_CA 0x01
423 #define NS_ANY_CA (NS_SSL_CA | NS_SMIME_CA | NS_OBJSIGN_CA)
425 #define XKU_SSL_SERVER 0x1
426 #define XKU_SSL_CLIENT 0x2
427 #define XKU_SMIME 0x4
428 #define XKU_CODE_SIGN 0x8
430 #define XKU_OCSP_SIGN 0x20
431 #define XKU_TIMESTAMP 0x40
432 #define XKU_DVCS 0x80
433 #define XKU_ANYEKU 0x100
435 #define X509_PURPOSE_DYNAMIC 0x1
436 #define X509_PURPOSE_DYNAMIC_NAME 0x2
448 #define X509_PURPOSE_SSL_CLIENT 1
449 #define X509_PURPOSE_SSL_SERVER 2
450 #define X509_PURPOSE_NS_SSL_SERVER 3
451 #define X509_PURPOSE_SMIME_SIGN 4
452 #define X509_PURPOSE_SMIME_ENCRYPT 5
453 #define X509_PURPOSE_CRL_SIGN 6
454 #define X509_PURPOSE_ANY 7
455 #define X509_PURPOSE_OCSP_HELPER 8
456 #define X509_PURPOSE_TIMESTAMP_SIGN 9
458 #define X509_PURPOSE_MIN 1
459 #define X509_PURPOSE_MAX 9
572 const char *
value,
int is_nc);
636 const unsigned char *
value,
709 int nid,
int *out_critical,
int *out_idx);
736 #define X509V3_ADD_OP_MASK 0xfL
740 #define X509V3_ADD_DEFAULT 0L
744 #define X509V3_ADD_APPEND 1L
748 #define X509V3_ADD_REPLACE 2L
752 #define X509V3_ADD_REPLACE_EXISTING 3L
756 #define X509V3_ADD_KEEP_EXISTING 4L
761 #define X509V3_ADD_DELETE 5L
767 #define X509V3_ADD_SILENT 0x10
784 #define X509V3_EXT_UNKNOWN_MASK (0xfL << 16)
788 #define X509V3_EXT_DEFAULT 0
791 #define X509V3_EXT_ERROR_UNKNOWN (1L << 16)
794 #define X509V3_EXT_PARSE_UNKNOWN (2L << 16)
797 #define X509V3_EXT_DUMP_UNKNOWN (3L << 16)
889 #define X509_CHECK_FLAG_ALWAYS_CHECK_SUBJECT 0
891 #define X509_CHECK_FLAG_NO_WILDCARDS 0x2
893 #define X509_CHECK_FLAG_NO_PARTIAL_WILDCARDS 0x4
895 #define X509_CHECK_FLAG_MULTI_LABEL_WILDCARDS 0x8
897 #define X509_CHECK_FLAG_SINGLE_LABEL_SUBDOMAINS 0x10
899 #define X509_CHECK_FLAG_NEVER_CHECK_SUBJECT 0x20
904 #define _X509_CHECK_FLAG_DOT_SUBDOMAINS 0x8000
907 unsigned int flags,
char **peername);
911 size_t chklen,
unsigned int flags);
919 unsigned long chtype);
930 #if defined(__cplusplus)
954 #define X509V3_R_BAD_IP_ADDRESS 100
955 #define X509V3_R_BAD_OBJECT 101
956 #define X509V3_R_BN_DEC2BN_ERROR 102
957 #define X509V3_R_BN_TO_ASN1_INTEGER_ERROR 103
958 #define X509V3_R_CANNOT_FIND_FREE_FUNCTION 104
959 #define X509V3_R_DIRNAME_ERROR 105
960 #define X509V3_R_DISTPOINT_ALREADY_SET 106
961 #define X509V3_R_DUPLICATE_ZONE_ID 107
962 #define X509V3_R_ERROR_CONVERTING_ZONE 108
963 #define X509V3_R_ERROR_CREATING_EXTENSION 109
964 #define X509V3_R_ERROR_IN_EXTENSION 110
965 #define X509V3_R_EXPECTED_A_SECTION_NAME 111
966 #define X509V3_R_EXTENSION_EXISTS 112
967 #define X509V3_R_EXTENSION_NAME_ERROR 113
968 #define X509V3_R_EXTENSION_NOT_FOUND 114
969 #define X509V3_R_EXTENSION_SETTING_NOT_SUPPORTED 115
970 #define X509V3_R_EXTENSION_VALUE_ERROR 116
971 #define X509V3_R_ILLEGAL_EMPTY_EXTENSION 117
972 #define X509V3_R_ILLEGAL_HEX_DIGIT 118
973 #define X509V3_R_INCORRECT_POLICY_SYNTAX_TAG 119
974 #define X509V3_R_INVALID_BOOLEAN_STRING 120
975 #define X509V3_R_INVALID_EXTENSION_STRING 121
976 #define X509V3_R_INVALID_MULTIPLE_RDNS 122
977 #define X509V3_R_INVALID_NAME 123
978 #define X509V3_R_INVALID_NULL_ARGUMENT 124
979 #define X509V3_R_INVALID_NULL_NAME 125
980 #define X509V3_R_INVALID_NULL_VALUE 126
981 #define X509V3_R_INVALID_NUMBER 127
982 #define X509V3_R_INVALID_NUMBERS 128
983 #define X509V3_R_INVALID_OBJECT_IDENTIFIER 129
984 #define X509V3_R_INVALID_OPTION 130
985 #define X509V3_R_INVALID_POLICY_IDENTIFIER 131
986 #define X509V3_R_INVALID_PROXY_POLICY_SETTING 132
987 #define X509V3_R_INVALID_PURPOSE 133
988 #define X509V3_R_INVALID_SECTION 134
989 #define X509V3_R_INVALID_SYNTAX 135
990 #define X509V3_R_ISSUER_DECODE_ERROR 136
991 #define X509V3_R_MISSING_VALUE 137
992 #define X509V3_R_NEED_ORGANIZATION_AND_NUMBERS 138
993 #define X509V3_R_NO_CONFIG_DATABASE 139
994 #define X509V3_R_NO_ISSUER_CERTIFICATE 140
995 #define X509V3_R_NO_ISSUER_DETAILS 141
996 #define X509V3_R_NO_POLICY_IDENTIFIER 142
997 #define X509V3_R_NO_PROXY_CERT_POLICY_LANGUAGE_DEFINED 143
998 #define X509V3_R_NO_PUBLIC_KEY 144
999 #define X509V3_R_NO_SUBJECT_DETAILS 145
1000 #define X509V3_R_ODD_NUMBER_OF_DIGITS 146
1001 #define X509V3_R_OPERATION_NOT_DEFINED 147
1002 #define X509V3_R_OTHERNAME_ERROR 148
1003 #define X509V3_R_POLICY_LANGUAGE_ALREADY_DEFINED 149
1004 #define X509V3_R_POLICY_PATH_LENGTH 150
1005 #define X509V3_R_POLICY_PATH_LENGTH_ALREADY_DEFINED 151
1006 #define X509V3_R_POLICY_WHEN_PROXY_LANGUAGE_REQUIRES_NO_POLICY 152
1007 #define X509V3_R_SECTION_NOT_FOUND 153
1008 #define X509V3_R_UNABLE_TO_GET_ISSUER_DETAILS 154
1009 #define X509V3_R_UNABLE_TO_GET_ISSUER_KEYID 155
1010 #define X509V3_R_UNKNOWN_BIT_STRING_ARGUMENT 156
1011 #define X509V3_R_UNKNOWN_EXTENSION 157
1012 #define X509V3_R_UNKNOWN_EXTENSION_NAME 158
1013 #define X509V3_R_UNKNOWN_OPTION 159
1014 #define X509V3_R_UNSUPPORTED_OPTION 160
1015 #define X509V3_R_UNSUPPORTED_TYPE 161
1016 #define X509V3_R_USER_TOO_LONG 162
1017 #define X509V3_R_INVALID_VALUE 163
1018 #define X509V3_R_TRAILING_DATA_IN_EXTENSION 164
OPENSSL_EXPORT int GENERAL_NAME_set0_othername(GENERAL_NAME *gen, ASN1_OBJECT *oid, ASN1_TYPE *value)
ASN1_OCTET_STRING * policy
OPENSSL_EXPORT int X509V3_EXT_print(BIO *out, X509_EXTENSION *ext, unsigned long flag, int indent)
OPENSSL_EXPORT ASN1_OCTET_STRING * a2i_IPADDRESS_NC(const char *ipasc)
OPENSSL_EXPORT int X509V3_NAME_from_section(X509_NAME *nm, STACK_OF(CONF_VALUE) *dn_sk, unsigned long chtype)
OPENSSL_EXPORT int X509_check_host(X509 *x, const char *chk, size_t chklen, unsigned int flags, char **peername)
ASN1_INTEGER * pcPathLengthConstraint
OPENSSL_EXPORT GENERAL_NAME * GENERAL_NAME_dup(GENERAL_NAME *a)
#define i2v_ASN1_BIT_STRING
OPENSSL_EXPORT int GENERAL_NAME_get0_otherName(const GENERAL_NAME *gen, ASN1_OBJECT **poid, ASN1_TYPE **pvalue)
struct x509_purpose_st X509_PURPOSE
#define DECLARE_ASN1_FUNCTIONS(type)
OPENSSL_EXPORT X509_EXTENSION * X509V3_EXT_nconf_nid(CONF *conf, X509V3_CTX *ctx, int ext_nid, const char *value)
OPENSSL_EXPORT X509_EXTENSION * X509V3_EXT_conf_nid(LHASH_OF(CONF_VALUE) *conf, X509V3_CTX *ctx, int ext_nid, const char *value)
int(* X509V3_EXT_I2R)(const struct v3_ext_method *method, void *ext, BIO *out, int indent)
X509_NAME * directoryName
struct POLICY_CONSTRAINTS_st POLICY_CONSTRAINTS
GENERAL_NAMES * CRLissuer
struct USERNOTICE_st USERNOTICE
OPENSSL_EXPORT void X509_PURPOSE_cleanup(void)
ASN1_IA5STRING * uniformResourceIdentifier
ASN1_STRING * x400Address
void *(* X509V3_EXT_R2I)(const struct v3_ext_method *method, struct v3_ext_ctx *ctx, const char *str)
struct EDIPartyName_st EDIPARTYNAME
void(* free_string)(void *db, char *string)
OPENSSL_EXPORT char * i2s_ASN1_ENUMERATED_TABLE(X509V3_EXT_METHOD *meth, const ASN1_ENUMERATED *aint)
struct PROXY_POLICY_st PROXY_POLICY
#define POLICY_MAPPING_free
#define X509V3_get_section
OPENSSL_EXPORT char * X509_PURPOSE_get0_sname(const X509_PURPOSE *xp)
ASN1_OBJECT * registeredID
struct ACCESS_DESCRIPTION_st ACCESS_DESCRIPTION
ASN1_INTEGER * inhibitPolicyMapping
static struct test_ctx ctx
OPENSSL_EXPORT int X509_PURPOSE_get_by_sname(char *sname)
OPENSSL_EXPORT void * X509V3_EXT_d2i(const X509_EXTENSION *ext)
OPENSSL_EXPORT uint32_t X509_get_extension_flags(X509 *x)
STACK_OF(CONF_VALUE) *(*get_section)(void *db
const OPENSSL_EXPORT X509V3_EXT_METHOD * X509V3_EXT_get_nid(int nid)
OPENSSL_EXPORT void X509_POLICY_NODE_print(BIO *out, X509_POLICY_NODE *node, int indent)
OPENSSL_EXPORT int X509V3_EXT_REQ_add_nconf(CONF *conf, X509V3_CTX *ctx, const char *section, X509_REQ *req)
OPENSSL_EXPORT int X509V3_EXT_add_nconf_sk(CONF *conf, X509V3_CTX *ctx, const char *section, STACK_OF(X509_EXTENSION) **sk)
#define ACCESS_DESCRIPTION_free
OPENSSL_EXPORT int X509V3_add_value_bool(const char *name, int asn1_bool, STACK_OF(CONF_VALUE) **extlist)
OPENSSL_EXPORT int X509V3_EXT_add(X509V3_EXT_METHOD *ext)
OPENSSL_EXPORT GENERAL_NAME * a2i_GENERAL_NAME(GENERAL_NAME *out, const X509V3_EXT_METHOD *method, X509V3_CTX *ctx, int gen_type, const char *value, int is_nc)
OPENSSL_EXPORT X509_EXTENSION * ex
OPENSSL_EXPORT int X509V3_EXT_CRL_add_nconf(CONF *conf, X509V3_CTX *ctx, const char *section, X509_CRL *crl)
OPENSSL_EXPORT X509_EXTENSION * X509V3_EXT_nconf(CONF *conf, X509V3_CTX *ctx, const char *name, const char *value)
void *(* X509V3_EXT_S2I)(const struct v3_ext_method *method, struct v3_ext_ctx *ctx, const char *str)
union DIST_POINT_NAME_st::@371 name
OPENSSL_EXPORT GENERAL_NAME * v2i_GENERAL_NAME_ex(GENERAL_NAME *out, const X509V3_EXT_METHOD *method, X509V3_CTX *ctx, CONF_VALUE *cnf, int is_nc)
OPENSSL_EXPORT int X509V3_extensions_print(BIO *out, const char *title, const STACK_OF(X509_EXTENSION) *exts, unsigned long flag, int indent)
void *(* X509V3_EXT_NEW)(void)
ASN1_BIT_STRING * onlysomereasons
OPENSSL_EXPORT int X509V3_add1_i2d(STACK_OF(X509_EXTENSION) **x, int nid, void *value, int crit, unsigned long flags)
OPENSSL_EXPORT int DIST_POINT_set_dpname(DIST_POINT_NAME *dpn, X509_NAME *iname)
struct X509V3_CONF_METHOD_st X509V3_CONF_METHOD
OPENSSL_EXPORT int X509_PURPOSE_get_by_id(int id)
struct POLICYQUALINFO_st POLICYQUALINFO
OPENSSL_EXPORT int X509_check_email(X509 *x, const char *chk, size_t chklen, unsigned int flags)
OPENSSL_EXPORT void X509V3_EXT_val_prn(BIO *out, STACK_OF(CONF_VALUE) *val, int indent, int ml)
OPENSSL_EXPORT int X509_check_issued(X509 *issuer, X509 *subject)
OPENSSL_EXPORT int X509_check_ip_asc(X509 *x, const char *ipasc, unsigned int flags)
OPENSSL_EXPORT void * X509V3_get_d2i(const STACK_OF(X509_EXTENSION) *extensions, int nid, int *out_critical, int *out_idx)
#define NAME_CONSTRAINTS_free
OPENSSL_EXPORT int i2a_ACCESS_DESCRIPTION(BIO *bp, const ACCESS_DESCRIPTION *a)
ASN1_OCTET_STRING * iPAddress
int(* check_purpose)(const struct x509_purpose_st *, const X509 *, int)
OPENSSL_EXPORT void X509V3_set_nconf(X509V3_CTX *ctx, CONF *conf)
OPENSSL_EXPORT void X509_email_free(STACK_OF(OPENSSL_STRING) *sk)
STACK_OF(ASN1_INTEGER) *noticenos
OPENSSL_EXPORT ASN1_BIT_STRING * v2i_ASN1_BIT_STRING(X509V3_EXT_METHOD *method, X509V3_CTX *ctx, STACK_OF(CONF_VALUE) *nval)
ASN1_INTEGER * requireExplicitPolicy
ASN1_STRING * organization
#define AUTHORITY_KEYID_free
OPENSSL_EXPORT char * X509_PURPOSE_get0_name(const X509_PURPOSE *xp)
PROXY_POLICY * proxyPolicy
OPENSSL_EXPORT char * i2s_ASN1_INTEGER(X509V3_EXT_METHOD *meth, const ASN1_INTEGER *aint)
OPENSSL_EXPORT int X509V3_add_value_uchar(const char *name, const unsigned char *value, STACK_OF(CONF_VALUE) **extlist)
void *(* X509V3_EXT_D2I)(void *, const unsigned char **, long)
OPENSSL_EXPORT uint32_t X509_get_key_usage(X509 *x)
OPENSSL_EXPORT void X509V3_string_free(X509V3_CTX *ctx, char *str)
OPENSSL_EXPORT void GENERAL_NAME_set0_value(GENERAL_NAME *a, int type, void *value)
OPENSSL_EXPORT int X509_check_purpose(X509 *x, int id, int ca)
char *(* X509V3_EXT_I2S)(const struct v3_ext_method *method, void *ext)
OPENSSL_EXPORT GENERAL_NAMES * v2i_GENERAL_NAMES(const X509V3_EXT_METHOD *method, X509V3_CTX *ctx, STACK_OF(CONF_VALUE) *nval)
OPENSSL_EXPORT ASN1_OCTET_STRING * a2i_IPADDRESS(const char *ipasc)
OPENSSL_EXPORT int X509_supported_extension(X509_EXTENSION *ex)
const OPENSSL_EXPORT ASN1_OCTET_STRING * X509_get0_authority_key_id(X509 *x509)
OPENSSL_EXPORT int X509_check_ca(X509 *x)
struct GENERAL_SUBTREE_st GENERAL_SUBTREE
int(* X509V3_EXT_I2D)(void *, unsigned char **)
#define BSSL_NAMESPACE_END
ASN1_IA5STRING * rfc822Name
OPENSSL_EXPORT ASN1_BIT_STRING * bits
#define i2v_GENERAL_NAMES
OPENSSL_EXPORT void X509V3_set_ctx(X509V3_CTX *ctx, X509 *issuer, X509 *subject, X509_REQ *req, X509_CRL *crl, int flags)
OPENSSL_EXPORT int X509V3_EXT_free(int nid, void *ext_data)
OPENSSL_EXPORT uint32_t X509_get_extended_key_usage(X509 *x)
OPENSSL_EXPORT int X509V3_add_value_int(const char *name, const ASN1_INTEGER *aint, STACK_OF(CONF_VALUE) **extlist)
#define DECLARE_ASN1_ALLOC_FUNCTIONS(type)
const OPENSSL_EXPORT X509V3_EXT_METHOD * X509V3_EXT_get(const X509_EXTENSION *ext)
OPENSSL_EXPORT int X509V3_get_value_int(const CONF_VALUE *value, ASN1_INTEGER **aint)
OPENSSL_EXPORT int X509V3_EXT_add_alias(int nid_to, int nid_from)
ASN1_OBJECT * subjectDomainPolicy
OPENSSL_EXPORT void X509V3_section_free(X509V3_CTX *ctx, STACK_OF(CONF_VALUE) *section)
void STACK_OF(CONF_VALUE) *extlist)
OPENSSL_EXPORT void * GENERAL_NAME_get0_value(const GENERAL_NAME *a, int *ptype)
OPENSSL_EXPORT int X509_check_ip(X509 *x, const unsigned char *chk, size_t chklen, unsigned int flags)
OPENSSL_EXPORT int X509V3_add_standard_extensions(void)
DIST_POINT_NAME * distpoint
OPENSSL_EXPORT GENERAL_NAME * gen
void(* X509V3_EXT_FREE)(void *)
OPENSSL_EXPORT ASN1_INTEGER * s2i_ASN1_INTEGER(X509V3_EXT_METHOD *meth, const char *value)
OPENSSL_EXPORT int NAME_CONSTRAINTS_check(X509 *x, NAME_CONSTRAINTS *nc)
const typedef ASN1_ITEM ASN1_ITEM_EXP
#define DEFINE_STACK_OF(type)
OPENSSL_EXPORT int X509_PURPOSE_set(int *p, int purpose)
OPENSSL_EXPORT X509_EXTENSION * X509V3_EXT_i2d(int ext_nid, int crit, void *ext_struc)
#define GENERAL_SUBTREE_free
OPENSSL_EXPORT int X509_check_akid(X509 *issuer, AUTHORITY_KEYID *akid)
OPENSSL_EXPORT int X509V3_EXT_print_fp(FILE *out, X509_EXTENSION *ext, int flag, int indent)
#define GENERAL_NAME_free
ASN1_BIT_STRING * reasons
#define X509V3_parse_list
OPENSSL_EXPORT int GENERAL_NAME_print(BIO *out, GENERAL_NAME *gen)
const OPENSSL_EXPORT GENERAL_NAMES * X509_get0_authority_issuer(X509 *x509)
OPENSSL_EXPORT ASN1_OCTET_STRING * s2i_ASN1_OCTET_STRING(X509V3_EXT_METHOD *method, X509V3_CTX *ctx, const char *str)
struct PROXY_CERT_INFO_EXTENSION_st PROXY_CERT_INFO_EXTENSION
const OPENSSL_EXPORT ASN1_OCTET_STRING * X509_get0_subject_key_id(X509 *x509)
struct otherName_st OTHERNAME
union GENERAL_NAME_st::@370 d
struct POLICYINFO_st POLICYINFO
OPENSSL_EXPORT int X509_PURPOSE_get_count(void)
const OPENSSL_EXPORT ASN1_INTEGER * X509_get0_authority_serial(X509 *x509)
UniquePtr< SSL_SESSION > ret
struct NOTICEREF_st NOTICEREF
OPENSSL_EXPORT int GENERAL_NAME_cmp(const GENERAL_NAME *a, const GENERAL_NAME *b)
struct GENERAL_NAME_st GENERAL_NAME
#define BASIC_CONSTRAINTS_free
std::array< int64_t, Size > values
#define X509_REQ_get1_email
ASN1_OCTET_STRING * keyid
OPENSSL_EXPORT char * X509V3_get_string(X509V3_CTX *ctx, const char *name, const char *section)
OPENSSL_EXPORT void X509V3_conf_free(CONF_VALUE *val)
#define BORINGSSL_MAKE_DELETER(type, deleter)
OPENSSL_EXPORT char * i2s_ASN1_OCTET_STRING(X509V3_EXT_METHOD *method, const ASN1_OCTET_STRING *ia5)
OPENSSL_EXPORT void X509V3_EXT_cleanup(void)
#define DECLARE_ASN1_ITEM(name)
OPENSSL_EXPORT int X509_PURPOSE_add(int id, int trust, int flags, int(*ck)(const X509_PURPOSE *, const X509 *, int), char *name, char *sname, void *arg)
OPENSSL_EXPORT int X509_PURPOSE_get_id(const X509_PURPOSE *)
OPENSSL_EXPORT int X509_PURPOSE_get_trust(const X509_PURPOSE *xp)
const X509V3_CONF_METHOD * db_meth
ASN1_STRING * nameAssigner
EDIPARTYNAME * ediPartyName
ASN1_OBJECT * issuerDomainPolicy
OPENSSL_EXPORT int X509V3_add_value_bool_nf(const char *name, int asn1_bool, STACK_OF(CONF_VALUE) **extlist)
struct POLICY_MAPPING_st POLICY_MAPPING
void *(* X509V3_EXT_V2I)(const struct v3_ext_method *method, struct v3_ext_ctx *ctx, STACK_OF(CONF_VALUE) *values)
union POLICYQUALINFO_st::@372 d
DIST_POINT_NAME * distpoint
struct DIST_POINT_NAME_st DIST_POINT_NAME
OPENSSL_EXPORT char * i2s_ASN1_ENUMERATED(X509V3_EXT_METHOD *meth, const ASN1_ENUMERATED *aint)
OPENSSL_EXPORT int X509V3_EXT_add_nconf(CONF *conf, X509V3_CTX *ctx, const char *section, X509 *cert)
OPENSSL_EXPORT int X509V3_get_value_bool(const CONF_VALUE *value, int *asn1_bool)
void(* free_section)(void *db, STACK_OF(CONF_VALUE) *section)
OPENSSL_EXPORT int X509V3_EXT_add_list(X509V3_EXT_METHOD *extlist)
OPENSSL_EXPORT int OTHERNAME_cmp(OTHERNAME *a, OTHERNAME *b)
OPENSSL_EXPORT X509_PURPOSE * X509_PURPOSE_get0(int idx)
ASN1_OBJECT * policyLanguage
OPENSSL_EXPORT int X509V3_add_value(const char *name, const char *value, STACK_OF(CONF_VALUE) **extlist)
OPENSSL_EXPORT GENERAL_NAME * v2i_GENERAL_NAME(const X509V3_EXT_METHOD *method, X509V3_CTX *ctx, CONF_VALUE *cnf)
grpc
Author(s):
autogenerated on Thu Mar 13 2025 03:01:54