]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
lib-smtp: server: Fix memory leak occurring when an error occurs early for BDAT/BURL.
authorStephan Bosch <stephan.bosch@dovecot.fi>
Tue, 19 Jun 2018 22:22:47 +0000 (00:22 +0200)
committerTimo Sirainen <timo.sirainen@dovecot.fi>
Tue, 26 Jun 2018 19:12:58 +0000 (19:12 +0000)
src/lib-smtp/smtp-server-cmd-data.c
src/lib-smtp/smtp-server-connection.c

index 7775310f55e5e4d2b9116d9c7a549b391d6d5b1b..ffc8cc9b52014ef22b3fd1a09519a969579821b6 100644 (file)
@@ -138,6 +138,7 @@ static void cmd_data_destroy(struct smtp_server_cmd_ctx *cmd)
                !smtp_server_command_replied_success(command)) {
                /* clean up */
                i_stream_destroy(&conn->state.data_input);
+               i_stream_destroy(&conn->state.data_chain_input);
                conn->state.data_chain = NULL;
        }
 
index 86efefe03ba1c2ff82975128162684f313f012a2..928c499baad31998917bd777750502eca4367933 100644 (file)
@@ -1333,6 +1333,7 @@ void smtp_server_connection_reset_state(struct smtp_server_connection *conn)
           the session.
         */
        i_stream_destroy(&conn->state.data_input);
+       i_stream_destroy(&conn->state.data_chain_input);
        conn->state.data_chain = NULL;
 
        /* reset state */