Common/Crypto: #ifdef out unnecessary locking code for OpenSSL 1.1+ (PR #25110)

(cherry picked from commit 7ea33120a0)
This commit is contained in:
Peter Keresztes Schmidt
2020-07-25 03:44:38 +02:00
committed by Shauren
parent 699c9ed414
commit 10f835b058
2 changed files with 12 additions and 1 deletions

View File

@@ -15,8 +15,10 @@
* with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#include <OpenSSLCrypto.h>
#include "OpenSSLCrypto.h"
#include <openssl/crypto.h>
#if defined(OPENSSL_VERSION_NUMBER) && OPENSSL_VERSION_NUMBER < 0x1010000fL
#include <vector>
#include <thread>
#include <mutex>
@@ -67,6 +69,7 @@ void OpenSSLCrypto::threadsCleanup()
}
cryptoLocks.resize(0);
}
#endif
#ifdef VALGRIND
#include <openssl/rand.h>

View File

@@ -19,6 +19,7 @@
#define OPENSSL_CRYPTO_H
#include "Define.h"
#include <openssl/opensslv.h>
/**
* A group of functions which setup openssl crypto module to work properly in multithreaded enviroment
@@ -26,10 +27,17 @@
*/
namespace OpenSSLCrypto
{
#if defined(OPENSSL_VERSION_NUMBER) && OPENSSL_VERSION_NUMBER < 0x1010000fL
/// Needs to be called before threads using openssl are spawned
TC_COMMON_API void threadsSetup();
/// Needs to be called after threads using openssl are despawned
TC_COMMON_API void threadsCleanup();
#else
void threadsSetup() { };
void threadsCleanup() { };
#endif
}
#endif