From 68f3283bf4e29a4d4d147e46e02022a98899fb9b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sl=C3=A1vek=20Banko?= Date: Wed, 4 Sep 2019 14:25:09 +0200 Subject: [PATCH] Fix SSL initialization for OpenSSL >= 1.1. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The first argument of the OPENSSL_init_ssl and OPENSSL_init_crypto functions must be a 64-bit int, not a 32-bit int, as this caused unpredictable OpenSSL behavior. This resolves bug 3024. Signed-off-by: Slávek Banko (cherry picked from commit a2ad929640f62ee1f854564366ce1cd8547de455) --- tdeio/kssl/kopenssl.cc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tdeio/kssl/kopenssl.cc b/tdeio/kssl/kopenssl.cc index 9c6d47ad4..0fa4e27b4 100644 --- a/tdeio/kssl/kopenssl.cc +++ b/tdeio/kssl/kopenssl.cc @@ -661,9 +661,9 @@ TDEConfig *cfg; if (x) { // OpenSSL >= 1.1 if (_cryptoLib) { - ((int (*)(unsigned long, void*))x)(0, NULL); + ((int (*)(unsigned long long, void*))x)(0, NULL); x = GET_CRYPTOLIB_SYMBOL("OPENSSL_init_crypto"); - if (x) ((int (*)(unsigned long, void*))x)(OPENSSL_INIT_ADD_ALL_CIPHERS + if (x) ((int (*)(unsigned long long, void*))x)(OPENSSL_INIT_ADD_ALL_CIPHERS | OPENSSL_INIT_ADD_ALL_DIGESTS | OPENSSL_INIT_LOAD_CONFIG, NULL);