| Index: openssl/crypto/x509/x509_vfy.h
|
| ===================================================================
|
| --- openssl/crypto/x509/x509_vfy.h (revision 105093)
|
| +++ openssl/crypto/x509/x509_vfy.h (working copy)
|
| @@ -77,6 +77,7 @@
|
| extern "C" {
|
| #endif
|
|
|
| +#if 0
|
| /* Outer object */
|
| typedef struct x509_hash_dir_st
|
| {
|
| @@ -85,6 +86,7 @@
|
| int *dirs_type;
|
| int num_dirs_alloced;
|
| } X509_HASH_DIR_CTX;
|
| +#endif
|
|
|
| typedef struct x509_file_st
|
| {
|
| @@ -198,6 +200,8 @@
|
| int (*get_crl)(X509_STORE_CTX *ctx, X509_CRL **crl, X509 *x); /* retrieve CRL */
|
| int (*check_crl)(X509_STORE_CTX *ctx, X509_CRL *crl); /* Check CRL validity */
|
| int (*cert_crl)(X509_STORE_CTX *ctx, X509_CRL *crl, X509 *x); /* Check certificate against CRL */
|
| + STACK_OF(X509) * (*lookup_certs)(X509_STORE_CTX *ctx, X509_NAME *nm);
|
| + STACK_OF(X509_CRL) * (*lookup_crls)(X509_STORE_CTX *ctx, X509_NAME *nm);
|
| int (*cleanup)(X509_STORE_CTX *ctx);
|
|
|
| CRYPTO_EX_DATA ex_data;
|
| @@ -246,6 +250,8 @@
|
| int (*check_crl)(X509_STORE_CTX *ctx, X509_CRL *crl); /* Check CRL validity */
|
| int (*cert_crl)(X509_STORE_CTX *ctx, X509_CRL *crl, X509 *x); /* Check certificate against CRL */
|
| int (*check_policy)(X509_STORE_CTX *ctx);
|
| + STACK_OF(X509) * (*lookup_certs)(X509_STORE_CTX *ctx, X509_NAME *nm);
|
| + STACK_OF(X509_CRL) * (*lookup_crls)(X509_STORE_CTX *ctx, X509_NAME *nm);
|
| int (*cleanup)(X509_STORE_CTX *ctx);
|
|
|
| /* The following is built up */
|
| @@ -263,6 +269,11 @@
|
| X509 *current_issuer; /* cert currently being tested as valid issuer */
|
| X509_CRL *current_crl; /* current CRL */
|
|
|
| + int current_crl_score; /* score of current CRL */
|
| + unsigned int current_reasons; /* Reason mask */
|
| +
|
| + X509_STORE_CTX *parent; /* For CRL path validation: parent context */
|
| +
|
| CRYPTO_EX_DATA ex_data;
|
| } /* X509_STORE_CTX */;
|
|
|
| @@ -330,9 +341,19 @@
|
| #define X509_V_ERR_INVALID_EXTENSION 41
|
| #define X509_V_ERR_INVALID_POLICY_EXTENSION 42
|
| #define X509_V_ERR_NO_EXPLICIT_POLICY 43
|
| +#define X509_V_ERR_DIFFERENT_CRL_SCOPE 44
|
| +#define X509_V_ERR_UNSUPPORTED_EXTENSION_FEATURE 45
|
|
|
| -#define X509_V_ERR_UNNESTED_RESOURCE 44
|
| +#define X509_V_ERR_UNNESTED_RESOURCE 46
|
|
|
| +#define X509_V_ERR_PERMITTED_VIOLATION 47
|
| +#define X509_V_ERR_EXCLUDED_VIOLATION 48
|
| +#define X509_V_ERR_SUBTREE_MINMAX 49
|
| +#define X509_V_ERR_UNSUPPORTED_CONSTRAINT_TYPE 51
|
| +#define X509_V_ERR_UNSUPPORTED_CONSTRAINT_SYNTAX 52
|
| +#define X509_V_ERR_UNSUPPORTED_NAME_SYNTAX 53
|
| +#define X509_V_ERR_CRL_PATH_VALIDATION_ERROR 54
|
| +
|
| /* The application is not happy */
|
| #define X509_V_ERR_APPLICATION_VERIFICATION 50
|
|
|
| @@ -362,10 +383,14 @@
|
| #define X509_V_FLAG_INHIBIT_MAP 0x400
|
| /* Notify callback that policy is OK */
|
| #define X509_V_FLAG_NOTIFY_POLICY 0x800
|
| -
|
| +/* Extended CRL features such as indirect CRLs, alternate CRL signing keys */
|
| +#define X509_V_FLAG_EXTENDED_CRL_SUPPORT 0x1000
|
| +/* Delta CRL support */
|
| +#define X509_V_FLAG_USE_DELTAS 0x2000
|
| /* Check selfsigned CA signature */
|
| #define X509_V_FLAG_CHECK_SS_SIGNATURE 0x4000
|
|
|
| +
|
| #define X509_VP_FLAG_DEFAULT 0x1
|
| #define X509_VP_FLAG_OVERWRITE 0x2
|
| #define X509_VP_FLAG_RESET_FLAGS 0x4
|
| @@ -387,11 +412,16 @@
|
| X509_STORE *X509_STORE_new(void );
|
| void X509_STORE_free(X509_STORE *v);
|
|
|
| +STACK_OF(X509)* X509_STORE_get1_certs(X509_STORE_CTX *st, X509_NAME *nm);
|
| +STACK_OF(X509_CRL)* X509_STORE_get1_crls(X509_STORE_CTX *st, X509_NAME *nm);
|
| int X509_STORE_set_flags(X509_STORE *ctx, unsigned long flags);
|
| int X509_STORE_set_purpose(X509_STORE *ctx, int purpose);
|
| int X509_STORE_set_trust(X509_STORE *ctx, int trust);
|
| int X509_STORE_set1_param(X509_STORE *ctx, X509_VERIFY_PARAM *pm);
|
|
|
| +void X509_STORE_set_verify_cb(X509_STORE *ctx,
|
| + int (*verify_cb)(int, X509_STORE_CTX *));
|
| +
|
| X509_STORE_CTX *X509_STORE_CTX_new(void);
|
|
|
| int X509_STORE_CTX_get1_issuer(X509 **issuer, X509_STORE_CTX *ctx, X509 *x);
|
| @@ -450,6 +480,9 @@
|
| void X509_STORE_CTX_set_error(X509_STORE_CTX *ctx,int s);
|
| int X509_STORE_CTX_get_error_depth(X509_STORE_CTX *ctx);
|
| X509 * X509_STORE_CTX_get_current_cert(X509_STORE_CTX *ctx);
|
| +X509 *X509_STORE_CTX_get0_current_issuer(X509_STORE_CTX *ctx);
|
| +X509_CRL *X509_STORE_CTX_get0_current_crl(X509_STORE_CTX *ctx);
|
| +X509_STORE_CTX *X509_STORE_CTX_get0_parent_ctx(X509_STORE_CTX *ctx);
|
| STACK_OF(X509) *X509_STORE_CTX_get_chain(X509_STORE_CTX *ctx);
|
| STACK_OF(X509) *X509_STORE_CTX_get1_chain(X509_STORE_CTX *ctx);
|
| void X509_STORE_CTX_set_cert(X509_STORE_CTX *c,X509 *x);
|
|
|