From: Stephan Bosch Date: Sun, 6 Jan 2019 15:22:02 +0000 (+0100) Subject: lib-smtp: client: Fix infinite loop in XCLIENT command interaction with server. X-Git-Tag: 2.3.6~11 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=5d03f39b345127b80d145ee90772739baa7ab810;p=thirdparty%2Fdovecot%2Fcore.git lib-smtp: client: Fix infinite loop in XCLIENT command interaction with server. The state regarding the fact that the XCLIENT command was already sent was not recorded. So, after the HELO handshake, the client would send a new XCLIENT command. --- diff --git a/src/lib-smtp/smtp-client-connection.c b/src/lib-smtp/smtp-client-connection.c index 04ee8a8357..770b24f92c 100644 --- a/src/lib-smtp/smtp-client-connection.c +++ b/src/lib-smtp/smtp-client-connection.c @@ -600,6 +600,8 @@ void smtp_client_connection_send_xclient(struct smtp_client_connection *conn) /* final XCLIENT command */ if (str_len(str) > offset) smtp_client_connection_xclient_submit(conn, str_c(str)); + + conn->xclient_sent = TRUE; } static void