From: Dr. Stephen Henson Date: Tue, 16 Nov 2010 12:11:46 +0000 (+0000) Subject: If EVP_PKEY structure contains an ENGINE the key is ENGINE specific and X-Git-Tag: OpenSSL-fips-2_0-rc1~948 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=ad889de09719b7b4065755d3f6924be2b9f47fcc;p=oweals%2Fopenssl.git If EVP_PKEY structure contains an ENGINE the key is ENGINE specific and we should use its method instead of any generic one. --- diff --git a/crypto/evp/pmeth_lib.c b/crypto/evp/pmeth_lib.c index 29448c00ec..bc7c8305a0 100644 --- a/crypto/evp/pmeth_lib.c +++ b/crypto/evp/pmeth_lib.c @@ -135,6 +135,8 @@ static EVP_PKEY_CTX *int_ctx_new(EVP_PKEY *pkey, ENGINE *e, int id) id = pkey->ameth->pkey_id; } #ifndef OPENSSL_NO_ENGINE + if (pkey && pkey->engine) + e = pkey->engine; /* Try to find an ENGINE which implements this method */ if (e) {