Skip to content

Commit

Permalink
Require openssl >= 1.1.1
Browse files Browse the repository at this point in the history
Versions older this are sufficiently old that we don't want to support
them, and they require extra support code.
  • Loading branch information
roberth committed Feb 3, 2023
1 parent 09bada2 commit 0a446da
Show file tree
Hide file tree
Showing 4 changed files with 1 addition and 27 deletions.
2 changes: 1 addition & 1 deletion configure.ac
Original file line number Diff line number Diff line change
Expand Up @@ -172,7 +172,7 @@ fi

# Look for OpenSSL, a required dependency. FIXME: this is only (maybe)
# used by S3BinaryCacheStore.
PKG_CHECK_MODULES([OPENSSL], [libcrypto], [CXXFLAGS="$OPENSSL_CFLAGS $CXXFLAGS"])
PKG_CHECK_MODULES([OPENSSL], [libcrypto >= 1.1.1], [CXXFLAGS="$OPENSSL_CFLAGS $CXXFLAGS"])


# Look for libarchive.
Expand Down
23 changes: 0 additions & 23 deletions src/libutil/hash.cc
Original file line number Diff line number Diff line change
Expand Up @@ -17,29 +17,6 @@

namespace nix {

#if OPENSSL_VERSION_NUMBER < 0x10101000L
/* OpenSSL is not thread-safe by default - it will randomly crash
unless the user supplies a mutex locking function. So let's do
that. */
static std::vector<std::mutex> opensslLocks;

static void opensslLockCallback(int mode, int type, const char * file, int line)
{
if (mode & CRYPTO_LOCK)
opensslLocks[type].lock();
else
opensslLocks[type].unlock();
}
#endif

void initOpenSSL() {
#if OPENSSL_VERSION_NUMBER < 0x10101000L
/* Initialise OpenSSL locking. */
opensslLocks = std::vector<std::mutex>(CRYPTO_num_locks());
CRYPTO_set_locking_callback(opensslLockCallback);
#endif
}

static size_t regularHashSize(HashType type) {
switch (type) {
case htMD5: return md5HashSize;
Expand Down
1 change: 0 additions & 1 deletion src/libutil/util.cc
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,6 @@ extern char * * environ __attribute__((weak));
namespace nix {

void initLibUtil() {
initOpenSSL();
}

std::optional<std::string> getEnv(const std::string & key)
Expand Down
2 changes: 0 additions & 2 deletions src/libutil/util.hh
Original file line number Diff line number Diff line change
Expand Up @@ -33,8 +33,6 @@ struct Source;

void initLibUtil();

void initOpenSSL();

/* The system for which Nix is compiled. */
extern const std::string nativeSystem;

Expand Down

0 comments on commit 0a446da

Please sign in to comment.