aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2024-10-09 19:08:39 +0200
committerOvahlord <dreadkiller@gmx.de>2024-10-12 23:47:23 +0200
commitd3668768076abdc49cc272b1c1b55fdaff4f45ec (patch)
tree272405566090c4067a03f19f6ffe6aca0108cc23
parentd8c79337ed136f878bf21016fc52fba7f243dd9a (diff)
Core/Crypto: Respect OPENSSL_MODULES environment variable if set by user that points to where legacy.dll should be found
(cherry picked from commit d3294568b8c823e05971faebfffb146f63be4634)
-rw-r--r--src/common/Cryptography/OpenSSLCrypto.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/common/Cryptography/OpenSSLCrypto.cpp b/src/common/Cryptography/OpenSSLCrypto.cpp
index db5e2e01533..e9cbf0284ef 100644
--- a/src/common/Cryptography/OpenSSLCrypto.cpp
+++ b/src/common/Cryptography/OpenSSLCrypto.cpp
@@ -18,6 +18,7 @@
#include "OpenSSLCrypto.h"
#include <openssl/crypto.h>
#include <openssl/provider.h>
+#include <cstdlib>
OSSL_PROVIDER* LegacyProvider;
@@ -28,7 +29,8 @@ void OpenSSLCrypto::threadsSetup([[maybe_unused]] boost::filesystem::path const&
#endif
#if TRINITY_PLATFORM == TRINITY_PLATFORM_WINDOWS
- OSSL_PROVIDER_set_default_search_path(nullptr, providerModulePath.string().c_str());
+ if (!std::getenv("OPENSSL_MODULES"))
+ OSSL_PROVIDER_set_default_search_path(nullptr, providerModulePath.string().c_str());
#endif
LegacyProvider = OSSL_PROVIDER_try_load(nullptr, "legacy", 1);
}