]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
lib-smtp: smtp-client-transaction - Rely on smtp_client_command_abort(NULL) being...
authorStephan Bosch <stephan.bosch@open-xchange.com>
Thu, 19 Jun 2025 09:59:02 +0000 (11:59 +0200)
committertimo.sirainen <timo.sirainen@open-xchange.com>
Sun, 29 Jun 2025 17:22:15 +0000 (17:22 +0000)
src/lib-smtp/smtp-client-transaction.c

index eb5ed75ed7d30a97b13438cef6f490c10b1ef9b7..f1430676ad3ca9db792a7f12033dbf79c95d20ef 100644 (file)
@@ -82,8 +82,7 @@ smtp_client_transaction_mail_free(struct smtp_client_transaction_mail **_mail)
 
        struct smtp_client_transaction *trans = mail->trans;
 
-       if (mail->cmd_mail_from != NULL)
-               smtp_client_command_abort(&mail->cmd_mail_from);
+       smtp_client_command_abort(&mail->cmd_mail_from);
        DLLIST2_REMOVE(&trans->mail_head, &trans->mail_tail, mail);
        pool_unref(&mail->pool);
 }
@@ -606,15 +605,9 @@ void smtp_client_transaction_abort(struct smtp_client_transaction *trans)
 
                smtp_client_transaction_rcpt_free(&rcpt);
        }
-       if (trans->cmd_data != NULL)
-               smtp_client_command_abort(&trans->cmd_data);
-       if (trans->cmd_rset != NULL)
-               smtp_client_command_abort(&trans->cmd_rset);
-       if (trans->cmd_plug != NULL)
-               smtp_client_command_abort(&trans->cmd_plug);
-       trans->cmd_data = NULL;
-       trans->cmd_rset = NULL;
-       trans->cmd_plug = NULL;
+       smtp_client_command_abort(&trans->cmd_data);
+       smtp_client_command_abort(&trans->cmd_rset);
+       smtp_client_command_abort(&trans->cmd_plug);
 
        smtp_client_connection_abort_transaction(conn, trans);
 
@@ -714,8 +707,7 @@ void smtp_client_transaction_destroy(struct smtp_client_transaction **_trans)
                smtp_client_command_drop_callback(trans->cmd_data);
        if (trans->cmd_rset != NULL)
                smtp_client_command_drop_callback(trans->cmd_rset);
-       if (trans->cmd_plug != NULL)
-               smtp_client_command_abort(&trans->cmd_plug);
+       smtp_client_command_abort(&trans->cmd_plug);
 
        /* Free any approved recipients early */
        while (trans->rcpts_count > 0) {
@@ -814,9 +806,7 @@ void smtp_client_transaction_fail_reply(struct smtp_client_transaction *trans,
        /* Plug */
        if (trans->failure == NULL)
                trans->failure = smtp_reply_clone(trans->pool, reply);
-       if (trans->cmd_plug != NULL)
-               smtp_client_command_abort(&trans->cmd_plug);
-       trans->cmd_plug = NULL;
+       smtp_client_command_abort(&trans->cmd_plug);
 
        trans->failing = FALSE;
 
@@ -1251,8 +1241,7 @@ smtp_client_transaction_send_data(struct smtp_client_transaction *trans)
                smtp_client_transaction_try_complete(trans);
        }
 
-       if (trans->cmd_plug != NULL)
-               smtp_client_command_abort(&trans->cmd_plug);
+       smtp_client_command_abort(&trans->cmd_plug);
        trans->cmd_last = NULL;
 
        if (failure.status != 0)
@@ -1338,8 +1327,7 @@ smtp_client_transaction_send_reset(struct smtp_client_transaction *trans)
                smtp_client_transaction_try_complete(trans);
        }
 
-       if (trans->cmd_plug != NULL)
-               smtp_client_command_abort(&trans->cmd_plug);
+       smtp_client_command_abort(&trans->cmd_plug);
        trans->cmd_last = NULL;
 
        if (failure.status != 0)