]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
submission: Split off starting the relay connection in a separate function.
authorStephan Bosch <stephan.bosch@dovecot.fi>
Sat, 1 Sep 2018 13:51:01 +0000 (15:51 +0200)
committerVille Savolainen <ville.savolainen@dovecot.fi>
Tue, 12 Feb 2019 13:40:41 +0000 (15:40 +0200)
src/submission/submission-client.c

index 76d7f6a141d38e72d65d9245634d40841b5c03f0..d8744596041dc8b4c2af2b5b0284d7ac5a458c77 100644 (file)
@@ -101,6 +101,12 @@ static void client_proxy_ready_cb(const struct smtp_reply *reply,
        smtp_server_connection_resume(client->conn);
 }
 
+static void client_proxy_start(struct client *client)
+{
+       smtp_client_connection_connect(client->proxy_conn,
+               client_proxy_ready_cb, client);
+}
+
 static void client_proxy_create(struct client *client,
                                const struct submission_settings *set)
 {
@@ -155,8 +161,6 @@ static void client_proxy_create(struct client *client,
        client->proxy_conn = smtp_client_connection_create(smtp_client,
                SMTP_PROTOCOL_SMTP, set->submission_relay_host,
                set->submission_relay_port, ssl_mode, &smtp_set);
-       smtp_client_connection_connect(client->proxy_conn,
-               client_proxy_ready_cb, client);
 }
 
 static void client_init_urlauth(struct client *client)
@@ -225,6 +229,7 @@ struct client *client_create(int fd_in, int fd_out,
                FALSE, &smtp_set, &smtp_callbacks, client);
 
        client_proxy_create(client, set);
+       client_proxy_start(client);
 
        smtp_server_connection_login(client->conn,
                client->user->username, helo,