diff options
Diffstat (limited to 'src/lib/libcrypto/x509')
-rw-r--r-- | src/lib/libcrypto/x509/x509.h | 1 | ||||
-rw-r--r-- | src/lib/libcrypto/x509/x509_vfy.c | 6 | ||||
-rw-r--r-- | src/lib/libcrypto/x509/x_all.c | 1 |
3 files changed, 7 insertions, 1 deletions
diff --git a/src/lib/libcrypto/x509/x509.h b/src/lib/libcrypto/x509/x509.h index 604f4fb27f..e6f8a40395 100644 --- a/src/lib/libcrypto/x509/x509.h +++ b/src/lib/libcrypto/x509/x509.h | |||
@@ -258,6 +258,7 @@ typedef struct x509_cinf_st | |||
258 | ASN1_BIT_STRING *issuerUID; /* [ 1 ] optional in v2 */ | 258 | ASN1_BIT_STRING *issuerUID; /* [ 1 ] optional in v2 */ |
259 | ASN1_BIT_STRING *subjectUID; /* [ 2 ] optional in v2 */ | 259 | ASN1_BIT_STRING *subjectUID; /* [ 2 ] optional in v2 */ |
260 | STACK_OF(X509_EXTENSION) *extensions; /* [ 3 ] optional in v3 */ | 260 | STACK_OF(X509_EXTENSION) *extensions; /* [ 3 ] optional in v3 */ |
261 | ASN1_ENCODING enc; | ||
261 | } X509_CINF; | 262 | } X509_CINF; |
262 | 263 | ||
263 | /* This stuff is certificate "auxiliary info" | 264 | /* This stuff is certificate "auxiliary info" |
diff --git a/src/lib/libcrypto/x509/x509_vfy.c b/src/lib/libcrypto/x509/x509_vfy.c index 87ebf62525..5a0b0249b4 100644 --- a/src/lib/libcrypto/x509/x509_vfy.c +++ b/src/lib/libcrypto/x509/x509_vfy.c | |||
@@ -703,6 +703,7 @@ static int check_cert(X509_STORE_CTX *ctx) | |||
703 | x = sk_X509_value(ctx->chain, cnum); | 703 | x = sk_X509_value(ctx->chain, cnum); |
704 | ctx->current_cert = x; | 704 | ctx->current_cert = x; |
705 | ctx->current_issuer = NULL; | 705 | ctx->current_issuer = NULL; |
706 | ctx->current_crl_score = 0; | ||
706 | ctx->current_reasons = 0; | 707 | ctx->current_reasons = 0; |
707 | while (ctx->current_reasons != CRLDP_ALL_REASONS) | 708 | while (ctx->current_reasons != CRLDP_ALL_REASONS) |
708 | { | 709 | { |
@@ -2015,6 +2016,9 @@ int X509_STORE_CTX_init(X509_STORE_CTX *ctx, X509_STORE *store, X509 *x509, | |||
2015 | ctx->error_depth=0; | 2016 | ctx->error_depth=0; |
2016 | ctx->current_cert=NULL; | 2017 | ctx->current_cert=NULL; |
2017 | ctx->current_issuer=NULL; | 2018 | ctx->current_issuer=NULL; |
2019 | ctx->current_crl=NULL; | ||
2020 | ctx->current_crl_score=0; | ||
2021 | ctx->current_reasons=0; | ||
2018 | ctx->tree = NULL; | 2022 | ctx->tree = NULL; |
2019 | ctx->parent = NULL; | 2023 | ctx->parent = NULL; |
2020 | 2024 | ||
@@ -2034,7 +2038,7 @@ int X509_STORE_CTX_init(X509_STORE_CTX *ctx, X509_STORE *store, X509 *x509, | |||
2034 | if (store) | 2038 | if (store) |
2035 | ret = X509_VERIFY_PARAM_inherit(ctx->param, store->param); | 2039 | ret = X509_VERIFY_PARAM_inherit(ctx->param, store->param); |
2036 | else | 2040 | else |
2037 | ctx->param->flags |= X509_VP_FLAG_DEFAULT|X509_VP_FLAG_ONCE; | 2041 | ctx->param->inh_flags |= X509_VP_FLAG_DEFAULT|X509_VP_FLAG_ONCE; |
2038 | 2042 | ||
2039 | if (store) | 2043 | if (store) |
2040 | { | 2044 | { |
diff --git a/src/lib/libcrypto/x509/x_all.c b/src/lib/libcrypto/x509/x_all.c index ebae30b701..8ec88c215a 100644 --- a/src/lib/libcrypto/x509/x_all.c +++ b/src/lib/libcrypto/x509/x_all.c | |||
@@ -90,6 +90,7 @@ int NETSCAPE_SPKI_verify(NETSCAPE_SPKI *a, EVP_PKEY *r) | |||
90 | 90 | ||
91 | int X509_sign(X509 *x, EVP_PKEY *pkey, const EVP_MD *md) | 91 | int X509_sign(X509 *x, EVP_PKEY *pkey, const EVP_MD *md) |
92 | { | 92 | { |
93 | x->cert_info->enc.modified = 1; | ||
93 | return(ASN1_item_sign(ASN1_ITEM_rptr(X509_CINF), x->cert_info->signature, | 94 | return(ASN1_item_sign(ASN1_ITEM_rptr(X509_CINF), x->cert_info->signature, |
94 | x->sig_alg, x->signature, x->cert_info,pkey,md)); | 95 | x->sig_alg, x->signature, x->cert_info,pkey,md)); |
95 | } | 96 | } |