From 090f37f98b5825f17a7504c15a003f9e18c2ec85 Mon Sep 17 00:00:00 2001 From: Pavel Baykov Date: Wed, 9 Feb 2022 15:41:41 -0400 Subject: [PATCH] remove openssl_thread_config_manager --- src/crypto/aes.cpp | 41 ----------------------------------------- 1 file changed, 41 deletions(-) diff --git a/src/crypto/aes.cpp b/src/crypto/aes.cpp index fe375f6..44c4085 100755 --- a/src/crypto/aes.cpp +++ b/src/crypto/aes.cpp @@ -383,45 +383,4 @@ std::vector aes_load( const fc::path& file, const fc::sha512& key ) return aes_decrypt( key, cipher ); } FC_RETHROW_EXCEPTIONS( warn, "", ("file",file) ) } -/* This stuff has to go somewhere, I guess this is as good a place as any... - OpenSSL isn't thread-safe unless you give it access to some mutexes, - so the CRYPTO_set_id_callback() function needs to be called before there's any - chance of OpenSSL being accessed from multiple threads. -*/ -struct openssl_thread_config -{ - static boost::mutex* openssl_mutexes; - static unsigned long get_thread_id(); - static void locking_callback(int mode, int type, const char *file, int line); - openssl_thread_config(); - ~openssl_thread_config(); -}; -openssl_thread_config openssl_thread_config_manager; - -boost::mutex* openssl_thread_config::openssl_mutexes = nullptr; - -unsigned long openssl_thread_config::get_thread_id() -{ -#ifdef _WIN32 - return (unsigned long)::GetCurrentThreadId(); -#else - return (unsigned long)(&fc::thread::current()); // TODO: should expose boost thread id -#endif -} - -void openssl_thread_config::locking_callback(int mode, int type, const char *file, int line) -{ -} - -// Warning: Things get complicated if third-party libraries also try to install their their own -// OpenSSL thread functions. Right now, we don't install our own handlers if another library has -// installed them before us which is a partial solution, but you'd really need to evaluate -// each library that does this to make sure they will play nice. -openssl_thread_config::openssl_thread_config() -{ -} -openssl_thread_config::~openssl_thread_config() -{ -} - } // namespace fc