1
0
mirror of https://github.com/PurpleI2P/i2pd.git synced 2025-02-02 06:54:15 +00:00

set openssl no_config before boost::asio:ssl

This commit is contained in:
orignal 2018-12-04 21:20:12 -05:00
parent 985a468d0f
commit 67f60f1889

View File

@ -1243,11 +1243,6 @@ namespace crypto
void InitCrypto (bool precomputation) void InitCrypto (bool precomputation)
{ {
i2p::cpu::Detect (); i2p::cpu::Detect ();
#if LEGACY_OPENSSL
OPENSSL_no_config ();
#else
OPENSSL_init_crypto (OPENSSL_INIT_NO_LOAD_CONFIG, NULL);
#endif
SSL_library_init (); SSL_library_init ();
/* auto numLocks = CRYPTO_num_locks(); /* auto numLocks = CRYPTO_num_locks();
for (int i = 0; i < numLocks; i++) for (int i = 0; i < numLocks; i++)
@ -1283,3 +1278,22 @@ namespace crypto
} }
} }
} }
// TODO: move to InitCrypto if boost::asio::ssl is not used anymore
// no_config must be called before SSL_library_init ()
class DummyOpenSSLInitializer
{
public:
DummyOpenSSLInitializer ()
{
#if LEGACY_OPENSSL
OPENSSL_no_config ();
#else
OPENSSL_init_ssl (OPENSSL_INIT_NO_LOAD_CONFIG, NULL);
#endif
}
};
static DummyOpenSSLInitializer g_OpenSSLInitializer; // must be called before
// boost::asio::ssl containing static openssl_init instance_;
#include <boost/asio/ssl.hpp>