From: Matt Caswell Date: Fri, 22 May 2020 13:09:13 +0000 (+0100) Subject: Make sure we save the copy function when registering a new Keymgmt X-Git-Tag: openssl-3.0.0-alpha4~77 X-Git-Url: https://git.librecmc.org/?p=oweals%2Fopenssl.git;a=commitdiff_plain;h=6136ecaa955506ff5f5fcdbc69976914418d561b Make sure we save the copy function when registering a new Keymgmt If a provider had a "copy" function in the its keymgmt definition we were ignoring it. Reviewed-by: Shane Lontis (Merged from https://github.com/openssl/openssl/pull/11914) --- diff --git a/crypto/evp/keymgmt_meth.c b/crypto/evp/keymgmt_meth.c index b75d02f136..ab5e00dfba 100644 --- a/crypto/evp/keymgmt_meth.c +++ b/crypto/evp/keymgmt_meth.c @@ -124,6 +124,10 @@ static void *keymgmt_from_dispatch(int name_id, if (keymgmt->has == NULL) keymgmt->has = OSSL_get_OP_keymgmt_has(fns); break; + case OSSL_FUNC_KEYMGMT_COPY: + if (keymgmt->copy == NULL) + keymgmt->copy = OSSL_get_OP_keymgmt_copy(fns); + break; case OSSL_FUNC_KEYMGMT_VALIDATE: if (keymgmt->validate == NULL) keymgmt->validate = OSSL_get_OP_keymgmt_validate(fns);