X-Git-Url: https://git.openssl.org/?p=openssl.git;a=blobdiff_plain;f=crypto%2Fx509v3%2Fx509v3.h;h=f2225d3980db225b7084789f392573acefd5461d;hp=bee56ab2d243fe700d356f745f78530df59cffee;hb=0d3b0afe9e59962f92b0cc6c63fc65a8e8dbc0de;hpb=13938acecae8f1b455812d0388e2891abd1c096d diff --git a/crypto/x509v3/x509v3.h b/crypto/x509v3/x509v3.h index bee56ab2d2..f2225d3980 100644 --- a/crypto/x509v3/x509v3.h +++ b/crypto/x509v3/x509v3.h @@ -58,14 +58,14 @@ #ifndef HEADER_X509V3_H #define HEADER_X509V3_H -#ifdef __cplusplus -extern "C" { -#endif - #include #include #include +#ifdef __cplusplus +extern "C" { +#endif + /* Forward reference */ struct v3_ext_method; struct v3_ext_ctx; @@ -131,6 +131,8 @@ void *db; typedef struct v3_ext_method X509V3_EXT_METHOD; typedef struct v3_ext_ctx X509V3_CTX; +DECLARE_STACK_OF(X509V3_EXT_METHOD) + /* ext_flags values */ #define X509V3_EXT_DYNAMIC 0x1 #define X509V3_EXT_CTX_DEP 0x2 @@ -179,8 +181,8 @@ union { } GENERAL_NAME; typedef struct ACCESS_DESCRIPTION_st { -ASN1_OBJECT *method; -GENERAL_NAME *location; + ASN1_OBJECT *method; + GENERAL_NAME *location; } ACCESS_DESCRIPTION; DECLARE_STACK_OF(GENERAL_NAME) @@ -192,7 +194,7 @@ DECLARE_ASN1_SET_OF(ACCESS_DESCRIPTION) typedef struct DIST_POINT_NAME_st { /* NB: this is a CHOICE type and only one of these should be set */ STACK_OF(GENERAL_NAME) *fullname; -X509_NAME *relativename; +STACK_OF(X509_NAME_ENTRY) *relativename; } DIST_POINT_NAME; typedef struct DIST_POINT_st { @@ -227,7 +229,7 @@ typedef struct SXNET_st { typedef struct NOTICEREF_st { ASN1_STRING *organization; - STACK *noticenos; + STACK_OF(ASN1_INTEGER) *noticenos; } NOTICEREF; typedef struct USERNOTICE_st { @@ -344,6 +346,10 @@ typedef struct x509_purpose_st { #define X509_PURPOSE_SMIME_SIGN 4 #define X509_PURPOSE_SMIME_ENCRYPT 5 #define X509_PURPOSE_CRL_SIGN 6 +#define X509_PURPOSE_ANY 7 + +#define X509_PURPOSE_MIN 1 +#define X509_PURPOSE_MAX 7 DECLARE_STACK_OF(X509_PURPOSE) @@ -459,7 +465,7 @@ void ACCESS_DESCRIPTION_free(ACCESS_DESCRIPTION *a); ACCESS_DESCRIPTION *d2i_ACCESS_DESCRIPTION(ACCESS_DESCRIPTION **a, unsigned char **pp, long length); -STACK_OF(ACCESS_DESCRIPTION) *AUTHORITY_INFO_ACCESS_new(); +STACK_OF(ACCESS_DESCRIPTION) *AUTHORITY_INFO_ACCESS_new(void); void AUTHORITY_INFO_ACCESS_free(STACK_OF(ACCESS_DESCRIPTION) *a); STACK_OF(ACCESS_DESCRIPTION) *d2i_AUTHORITY_INFO_ACCESS(STACK_OF(ACCESS_DESCRIPTION) **a, unsigned char **pp, long length); @@ -512,9 +518,6 @@ int X509V3_add_standard_extensions(void); STACK_OF(CONF_VALUE) *X509V3_parse_list(char *line); void *X509V3_EXT_d2i(X509_EXTENSION *ext); void *X509V3_get_d2i(STACK_OF(X509_EXTENSION) *x, int nid, int *crit, int *idx); -void *X509V3_X509_get_d2i(X509 *x, int nid, int *crit, int *idx); -void *X509V3_CRL_get_d2i(X509_CRL *x, int nid, int *crit, int *idx); -void *X509V3_REVOKED_get_d2i(X509_REVOKED *x, int nid, int *crit, int *idx); X509_EXTENSION *X509V3_EXT_i2d(int ext_nid, int crit, void *ext_struc); @@ -529,15 +532,16 @@ int X509V3_EXT_print_fp(FILE *out, X509_EXTENSION *ext, int flag, int indent); int X509_check_purpose(X509 *x, int id, int ca); int X509_PURPOSE_get_count(void); -X509_PURPOSE * X509_PURPOSE_iget(int idx); +X509_PURPOSE * X509_PURPOSE_get0(int idx); int X509_PURPOSE_get_by_sname(char *sname); int X509_PURPOSE_get_by_id(int id); -int X509_PURPOSE_add(X509_PURPOSE *xp); -char *X509_PURPOSE_iget_name(X509_PURPOSE *xp); -char *X509_PURPOSE_iget_sname(X509_PURPOSE *xp); +int X509_PURPOSE_add(int id, int trust, int flags, + int (*ck)(X509_PURPOSE *, X509 *, int), + char *name, char *sname, void *arg); +char *X509_PURPOSE_get0_name(X509_PURPOSE *xp); +char *X509_PURPOSE_get0_sname(X509_PURPOSE *xp); int X509_PURPOSE_get_trust(X509_PURPOSE *xp); void X509_PURPOSE_cleanup(void); -void X509_PURPOSE_add_standard(void); int X509_PURPOSE_get_id(X509_PURPOSE *); /* BEGIN ERROR CODES */