From 3d90a24e9349ea17e5467de7b1d7bfa17ec2c650 Mon Sep 17 00:00:00 2001 From: Jakub Zelenka Date: Thu, 24 Nov 2022 18:29:44 +0000 Subject: [PATCH] Fix GH-9997: OpenSSL engine clean up segfault --- NEWS | 3 +++ ext/openssl/openssl.c | 5 +++-- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/ext/openssl/openssl.c b/ext/openssl/openssl.c index cb5e6260b4ab..da555c843c15 100644 --- a/ext/openssl/openssl.c +++ b/ext/openssl/openssl.c @@ -1324,13 +1324,14 @@ PHP_MSHUTDOWN_FUNCTION(openssl) #if OPENSSL_VERSION_NUMBER < 0x10100000L || defined (LIBRESSL_VERSION_NUMBER) EVP_cleanup(); + /* prevent accessing locking callback from unloaded extension */ + CRYPTO_set_locking_callback(NULL); + #ifndef OPENSSL_NO_ENGINE /* Free engine list initialized by OPENSSL_config */ ENGINE_cleanup(); #endif - /* prevent accessing locking callback from unloaded extension */ - CRYPTO_set_locking_callback(NULL); /* free allocated error strings */ ERR_free_strings(); CONF_modules_free();