]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
submission: Allocate recipients for the client transaction on the server recipient...
authorStephan Bosch <stephan.bosch@dovecot.fi>
Wed, 10 Oct 2018 22:50:26 +0000 (00:50 +0200)
committerVille Savolainen <ville.savolainen@dovecot.fi>
Tue, 12 Feb 2019 13:41:11 +0000 (15:41 +0200)
src/submission/submission-backend-relay.c

index c1bb8f633903e002da97760ec79851e5750221c6..2f8b517eb02fd62b1b7cf958b875bee5c10d1665 100644 (file)
@@ -445,14 +445,6 @@ relay_cmd_rcpt_replied(struct smtp_server_cmd_ctx *cmd ATTR_UNUSED,
                smtp_client_transaction_rcpt_abort(&rcpt_cmd->relay_rcpt);
 }
 
-static void
-relay_cmd_rcpt_data_callback(
-       const struct smtp_reply *relay_reply ATTR_UNUSED,
-       struct relay_cmd_rcpt_context *rcpt_cmd ATTR_UNUSED)
-{
-       /* nothing to do here for normal submission */
-}
-
 static void
 relay_cmd_rcpt_callback(const struct smtp_reply *relay_reply,
                        struct relay_cmd_rcpt_context *rcpt_cmd)
@@ -485,6 +477,7 @@ backend_relay_cmd_rcpt(struct submission_backend *_backend,
 {
        struct submission_backend_relay *backend =
                (struct submission_backend_relay *)_backend;
+       struct smtp_server_recipient *rcpt = srcpt->rcpt;
        struct relay_cmd_rcpt_context *rcpt_cmd;
 
        /* queue command (pipeline) */
@@ -501,10 +494,9 @@ backend_relay_cmd_rcpt(struct submission_backend *_backend,
                        backend->conn, backend_relay_trans_finished, backend);
                smtp_client_transaction_set_immediate(backend->trans, TRUE);
        }
-       rcpt_cmd->relay_rcpt = smtp_client_transaction_add_rcpt(
-               backend->trans, srcpt->rcpt->path, &srcpt->rcpt->params,
-               relay_cmd_rcpt_callback, relay_cmd_rcpt_data_callback,
-               rcpt_cmd);
+       rcpt_cmd->relay_rcpt = smtp_client_transaction_add_pool_rcpt(
+               backend->trans, rcpt->pool, rcpt->path, &rcpt->params,
+               relay_cmd_rcpt_callback, rcpt_cmd);
        return 0;
 }