Fix memleak in test/provider_test.c
This memory leak is triggered when configuring with 'no-legacy'
Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Dmitry Belyavskiy <beldmit@gmail.com>
(Merged from https://github.com/openssl/openssl/pull/18179)
diff --git a/test/provider_test.c b/test/provider_test.c
index 807b8fc..11b7ee4 100644
--- a/test/provider_test.c
+++ b/test/provider_test.c
@@ -191,12 +191,15 @@
* In this case we assume we've been built with "no-legacy" and skip
* this test (there is no OPENSSL_NO_LEGACY)
*/
+ OSSL_LIB_CTX_free(libctx);
return 1;
}
if (!TEST_true(OSSL_PROVIDER_add_builtin(libctx, name,
- PROVIDER_INIT_FUNCTION_NAME)))
+ PROVIDER_INIT_FUNCTION_NAME))) {
+ OSSL_LIB_CTX_free(libctx);
return 0;
+ }
/* test_provider will free libctx and unload legacy as part of the test */
return test_provider(&libctx, name, legacy);