]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
lib-smtp: client: Fix infinite loop in XCLIENT command interaction with server.
authorStephan Bosch <stephan.bosch@dovecot.fi>
Sun, 6 Jan 2019 15:22:02 +0000 (16:22 +0100)
committerVille Savolainen <ville.savolainen@dovecot.fi>
Thu, 4 Apr 2019 10:58:59 +0000 (13:58 +0300)
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.

src/lib-smtp/smtp-client-connection.c

index 04ee8a8357cdc6ad06b345e314d2a0353a2bedec..770b24f92c948d1f6bb2cb538dbfedd526545c9a 100644 (file)
@@ -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