From 41b0d263d6e57276cc3e2a2457d8ae48e1f56301 Mon Sep 17 00:00:00 2001 From: Anderson Toshiyuki Sasaki Date: Tue, 13 Nov 2018 11:35:28 +0100 Subject: libcrypto: Fix access violation in ssh_init() This fixes an access violation when ssh_init() was called after ssh_finalize() in Windows when using OpenSSL 1.0.2 and libssh statically linked. Fixes T120 Signed-off-by: Anderson Toshiyuki Sasaki Reviewed-by: Andreas Schneider --- src/threads/libcrypto.c | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'src/threads') diff --git a/src/threads/libcrypto.c b/src/threads/libcrypto.c index 156e5041..5786948b 100644 --- a/src/threads/libcrypto.c +++ b/src/threads/libcrypto.c @@ -116,6 +116,14 @@ void crypto_thread_finalize(void) return; } +#ifdef HAVE_OPENSSL_CRYPTO_THREADID_SET_CALLBACK + CRYPTO_THREADID_set_callback(NULL); +#else + CRYPTO_set_id_callback(NULL); +#endif + + CRYPTO_set_locking_callback(NULL); + for (i = 0; i < n; ++i) { user_callbacks->mutex_destroy(&libcrypto_mutexes[i]); } -- cgit v1.2.3