From 71e5bb982f9c9563567ea8ae9f6e29492e9146ca Mon Sep 17 00:00:00 2001 From: Neil Horman Date: Tue, 2 Apr 2024 15:02:51 -0400 Subject: [PATCH] set module path from template Modules that aren't activated at conf load time don't seem to set the module path from the template leading to load failures. Make sure to set that Fixes #24020 Reviewed-by: Matt Caswell Reviewed-by: Richard Levitte Reviewed-by: Tomas Mraz (cherry picked from commit bc9595963a45e28e6a8b2de45a6719c252bd3a3d) (Merged from https://github.com/openssl/openssl/pull/24198) --- crypto/provider_core.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/crypto/provider_core.c b/crypto/provider_core.c index e90b63b303f..07b63c45ba3 100644 --- a/crypto/provider_core.c +++ b/crypto/provider_core.c @@ -559,8 +559,11 @@ OSSL_PROVIDER *ossl_provider_new(OSSL_LIB_CTX *libctx, const char *name, } /* provider_new() generates an error, so no need here */ - if ((prov = provider_new(name, template.init, template.parameters)) == NULL) + prov = provider_new(name, template.init, template.parameters); + if (!ossl_provider_set_module_path(prov, template.path)) { + ossl_provider_free(prov); return NULL; + } prov->libctx = libctx; #ifndef FIPS_MODULE -- 2.47.2