]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
lib-smtp: server: Recreate connection IO after streams change.
authorStephan Bosch <stephan.bosch@dovecot.fi>
Fri, 9 Feb 2018 23:07:37 +0000 (00:07 +0100)
committerVille Savolainen <ville.savolainen@dovecot.fi>
Mon, 12 Mar 2018 07:24:15 +0000 (09:24 +0200)
src/lib-smtp/smtp-server-connection.c

index 578858671499bc1956957b1f649cb2087eebe44c..73261eef035331e2e111f47350c0fde16c0beba2 100644 (file)
@@ -355,6 +355,7 @@ int smtp_server_connection_ssl_init(struct smtp_server_connection *conn)
                conn->conn.output = conn->raw_output;
        }
 
+       smtp_server_connection_input_halt(conn);
        if (master_service_ssl_init(master_service,
                                &conn->conn.input, &conn->conn.output,
                                &conn->ssl_iostream, &error) < 0) {
@@ -363,6 +364,7 @@ int smtp_server_connection_ssl_init(struct smtp_server_connection *conn)
                        conn->conn.name, error);
                return -1;
        }
+       smtp_server_connection_input_resume(conn);
 
        if (ssl_iostream_handshake(conn->ssl_iostream) < 0) {
                smtp_server_connection_error(conn,