--- modules/ssl/ssl_engine_init.c.orig 2017-04-03 11:39:20 UTC +++ modules/ssl/ssl_engine_init.c @@ -47,7 +47,7 @@ APR_IMPLEMENT_OPTIONAL_HOOK_RUN_ALL(ssl, #define KEYTYPES "RSA or DSA" #endif -#if OPENSSL_VERSION_NUMBER < 0x10100000L +#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) /* OpenSSL Pre-1.1.0 compatibility */ /* Taken from OpenSSL 1.1.0 snapshot 20160410 */ static int DH_set0_pqg(DH *dh, BIGNUM *p, BIGNUM *q, BIGNUM *g) @@ -380,7 +380,7 @@ apr_status_t ssl_init_Module(apr_pool_t modssl_init_app_data2_idx(); /* for modssl_get_app_data2() at request time */ init_dh_params(); -#if OPENSSL_VERSION_NUMBER >= 0x10100000L +#if OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER) init_bio_methods(); #endif @@ -583,7 +583,7 @@ static apr_status_t ssl_init_ctx_protoco SSL_CTX_set_options(ctx, SSL_OP_ALL); -#if OPENSSL_VERSION_NUMBER < 0x10100000L +#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) /* always disable SSLv2, as per RFC 6176 */ SSL_CTX_set_options(ctx, SSL_OP_NO_SSLv2); @@ -2011,7 +2011,7 @@ apr_status_t ssl_init_ModuleKill(void *d } -#if OPENSSL_VERSION_NUMBER >= 0x10100000L +#if OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER) free_bio_methods(); #endif free_dh_params(); --- modules/ssl/ssl_private.h.orig 2017-04-03 11:39:20 UTC +++ modules/ssl/ssl_private.h @@ -136,7 +136,7 @@ #endif /* session id constness */ -#if OPENSSL_VERSION_NUMBER < 0x10100000L +#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) #define IDCONST #else #define IDCONST const @@ -159,7 +159,7 @@ #if !defined(OPENSSL_NO_OCSP) && defined(SSL_CTX_set_tlsext_status_cb) #define HAVE_OCSP_STAPLING /* All exist but are no longer macros since OpenSSL 1.1.0 */ -#if OPENSSL_VERSION_NUMBER < 0x10100000L +#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) /* backward compatibility with OpenSSL < 1.0 */ #ifndef sk_OPENSSL_STRING_num #define sk_OPENSSL_STRING_num sk_num @@ -199,7 +199,7 @@ #endif /* !defined(OPENSSL_NO_TLSEXT) && defined(SSL_set_tlsext_host_name) */ -#if OPENSSL_VERSION_NUMBER < 0x10100000L +#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) #define BN_get_rfc2409_prime_768 get_rfc2409_prime_768 #define BN_get_rfc2409_prime_1024 get_rfc2409_prime_1024 #define BN_get_rfc3526_prime_1536 get_rfc3526_prime_1536 --- modules/ssl/ssl_util_ssl.h.orig 2017-03-20 12:01:16 UTC +++ modules/ssl/ssl_util_ssl.h @@ -41,7 +41,7 @@ #define MODSSL_LIBRARY_VERSION OPENSSL_VERSION_NUMBER #define MODSSL_LIBRARY_NAME "OpenSSL" #define MODSSL_LIBRARY_TEXT OPENSSL_VERSION_TEXT -#if OPENSSL_VERSION_NUMBER < 0x10100000L +#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) #define MODSSL_LIBRARY_DYNTEXT SSLeay_version(SSLEAY_VERSION) #else #define MODSSL_LIBRARY_DYNTEXT OpenSSL_version(OPENSSL_VERSION) --- support/ab.c.orig 2017-05-28 21:15:41 UTC +++ support/ab.c @@ -2514,7 +2514,7 @@ int main(int argc, const char * const ar exit(1); } SSL_CTX_set_options(ssl_ctx, SSL_OP_ALL); -#if OPENSSL_VERSION_NUMBER >= 0x10100000L +#if OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER) SSL_CTX_set_max_proto_version(ssl_ctx, max_prot); SSL_CTX_set_min_proto_version(ssl_ctx, min_prot); #endif