From: Aki Tuomi Date: Tue, 4 Jun 2024 08:05:25 +0000 (+0300) Subject: login-common: Set correct disconnect reason if TLS handshake failed X-Git-Tag: 2.4.0~1545 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=cd3ef702c7fb540cc5c27a5ad6f9c36fb595fcd4;p=thirdparty%2Fdovecot%2Fcore.git login-common: Set correct disconnect reason if TLS handshake failed --- diff --git a/src/login-common/client-common.c b/src/login-common/client-common.c index c052b33834..211f7620be 100644 --- a/src/login-common/client-common.c +++ b/src/login-common/client-common.c @@ -1293,6 +1293,13 @@ bool client_get_extra_disconnect_reason(struct client *client, *event_reason_r = NULL; + if (client->ssl_iostream != NULL && + !ssl_iostream_is_handshaked(client->ssl_iostream)) { + *event_reason_r = "tls_handshake_not_finished"; + *human_reason_r = "disconnected during TLS handshake"; + return TRUE; + } + if (!client->notified_auth_ready) { *event_reason_r = "auth_process_not_ready"; *human_reason_r = t_strdup_printf(