Browse Source

Compatibility defines should be used for LibreSSL.

LibreSSL doesn't use OpenSSL_version (it uses the older SSLeay_version
API), but it reports a major version number as 2 in
OPENSSL_VERSION_NUMBER. Instead of fudging the version check, for now,
let's just check if we're using LibreSSL by checking the version number
macro exists, and use compatibility defines unconditionally when we
detect LibreSSL.
dana koch 8 years ago
parent
commit
be841f77aa
1 changed files with 2 additions and 1 deletions
  1. 2 1
      src/common/compat_openssl.h

+ 2 - 1
src/common/compat_openssl.h

@@ -19,7 +19,8 @@
 #error "We require OpenSSL >= 1.0.0"
 #endif
 
-#if OPENSSL_VERSION_NUMBER < OPENSSL_V_SERIES(1,1,0)
+#if OPENSSL_VERSION_NUMBER < OPENSSL_V_SERIES(1,1,0) || \
+   defined(LIBRESSL_VERSION_NUMBER)
 #define OPENSSL_VERSION SSLEAY_VERSION
 #define OpenSSL_version(v) SSLeay_version(v)
 #define OpenSSL_version_num() SSLeay()