--- cpp-driver-2.9.0/src/ssl/ssl_openssl_impl.cpp.orig +++ cpp-driver-2.9.0/src/ssl/ssl_openssl_impl.cpp @@ -113,7 +113,7 @@ return len; } -#if OPENSSL_VERSION_NUMBER < 0x10100000L +#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) static uv_rwlock_t* crypto_locks; static void crypto_locking_callback(int mode, int n, const char* file, int line) { @@ -597,7 +597,7 @@ SSL_load_error_strings(); OpenSSL_add_all_algorithms(); -#if OPENSSL_VERSION_NUMBER < 0x10100000L +#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) // We have to set the lock/id callbacks for use of OpenSSL thread safety. // It's not clear what's thread-safe in OpenSSL. Writing/Reading to // a single "SSL" object is NOT and we don't do that, but we do create multiple