diff options
Diffstat (limited to 'crypto')
-rw-r--r-- | crypto/x509/x509_vfy.c | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/crypto/x509/x509_vfy.c b/crypto/x509/x509_vfy.c index efa6bcaa67..8f8847da91 100644 --- a/crypto/x509/x509_vfy.c +++ b/crypto/x509/x509_vfy.c @@ -2161,11 +2161,10 @@ int X509_STORE_CTX_init(X509_STORE_CTX *ctx, X509_STORE *store, X509 *x509, /* Zero ex_data to make sure we're cleanup-safe */ memset(&ctx->ex_data, 0, sizeof(ctx->ex_data)); - if (store) { - ctx->verify_cb = store->verify_cb; - /* Seems to always be 0 in OpenSSL, else must be idempotent */ + /* Seems to always be 0 in OpenSSL, else must be idempotent */ + if (store && ctx->cleanup) ctx->cleanup = store->cleanup; - } else + else ctx->cleanup = 0; if (store && store->check_issued) |