From d44d04e2ceb255acf9f98fa3448f09dd893eec60 Mon Sep 17 00:00:00 2001 From: "Roger A. Light" Date: Wed, 9 Dec 2020 15:40:45 +0000 Subject: [PATCH] Fix DH group not being set for TLS connections. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This meant ciphers using DHE couldn't be used. Closes #1925. Closes #1476. Thanks to Jonathan Sönnerup, Valerii Demeshko, and sectokia. --- ChangeLog.txt | 2 ++ src/net.c | 3 +++ 2 files changed, 5 insertions(+) diff --git a/ChangeLog.txt b/ChangeLog.txt index 5be1bc2f5a..d762a3f541 100644 --- a/ChangeLog.txt +++ b/ChangeLog.txt @@ -1,6 +1,8 @@ Broker: - Fix websockets connections on Windows blocking subsequent connections. Closes #1934. +- Fix DH group not being set for TLS connections, which meant ciphers using + DHE couldn't be used. Closes #1925. Closes #1476. Apps: - Fix `mosquitto_passwd -U` diff --git a/src/net.c b/src/net.c index b4cfdcb758..b274458233 100644 --- a/src/net.c +++ b/src/net.c @@ -373,6 +373,9 @@ int net__tls_server_ctx(struct mosquitto__listener *listener) SSL_CTX_set_ecdh_auto(listener->ssl_ctx, 1); #endif #endif +#if OPENSSL_VERSION_NUMBER >= 0x10100000L + SSL_CTX_set_dh_auto(listener->ssl_ctx, 1); +#endif #ifdef SSL_OP_NO_RENEGOTIATION SSL_CTX_set_options(listener->ssl_ctx, SSL_OP_NO_RENEGOTIATION);