summaryrefslogtreecommitdiff
path: root/modules/ssl/ssl_engine_init.c
diff options
context:
space:
mode:
Diffstat (limited to 'modules/ssl/ssl_engine_init.c')
-rw-r--r--modules/ssl/ssl_engine_init.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/modules/ssl/ssl_engine_init.c b/modules/ssl/ssl_engine_init.c
index ba79ef3146..e60ac30434 100644
--- a/modules/ssl/ssl_engine_init.c
+++ b/modules/ssl/ssl_engine_init.c
@@ -1299,9 +1299,11 @@ static apr_status_t ssl_init_server_certs(server_rec *s,
OBJ_nid2sn(nid), vhost_id, certfile);
}
/*
- * ...otherwise, enable auto curve selection (OpenSSL 1.0.2 and later)
+ * ...otherwise, enable auto curve selection (OpenSSL 1.0.2)
* or configure NIST P-256 (required to enable ECDHE for earlier versions)
+ * ECDH is always enabled in 1.1.0 unless excluded from SSLCipherList
*/
+#if (OPENSSL_VERSION_NUMBER < 0x10100000L)
else {
#if defined(SSL_CTX_set_ecdh_auto)
SSL_CTX_set_ecdh_auto(mctx->ssl_ctx, 1);
@@ -1310,6 +1312,8 @@ static apr_status_t ssl_init_server_certs(server_rec *s,
EC_KEY_new_by_curve_name(NID_X9_62_prime256v1));
#endif
}
+#endif
+ /* OpenSSL assures us that _free() is NULL-safe */
EC_KEY_free(eckey);
EC_GROUP_free(ecparams);
#endif