From: Timo Sirainen Date: Sun, 12 Dec 2021 22:52:49 +0000 (+0200) Subject: global: Assume anvil command was success only if master_service_anvil_send() returns... X-Git-Tag: 2.4.0~4543 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=c15018f6c1b20c9860b05d6a83a3d45a40dd9e98;p=thirdparty%2Fdovecot%2Fcore.git global: Assume anvil command was success only if master_service_anvil_send() returns TRUE --- diff --git a/src/imap-hibernate/imap-client.c b/src/imap-hibernate/imap-client.c index 8e0f93381b..4713de455a 100644 --- a/src/imap-hibernate/imap-client.c +++ b/src/imap-hibernate/imap-client.c @@ -640,9 +640,9 @@ imap_client_create(int fd, const struct imap_client_state *state) ident = imap_client_get_anvil_userip_ident(&client->state); if (ident != NULL) { - master_service_anvil_send(master_service, t_strconcat( - "CONNECT\t", my_pid, "\timap/", ident, "\n", NULL)); - client->state.anvil_sent = TRUE; + if (master_service_anvil_send(master_service, t_strconcat( + "CONNECT\t", my_pid, "\timap/", ident, "\n", NULL))) + client->state.anvil_sent = TRUE; } p_array_init(&client->notifys, pool, 2); diff --git a/src/imap/imap-client.c b/src/imap/imap-client.c index 364cef3ead..5592b51db1 100644 --- a/src/imap/imap-client.c +++ b/src/imap/imap-client.c @@ -205,9 +205,9 @@ struct client *client_create(int fd_in, int fd_out, ident = mail_user_get_anvil_userip_ident(client->user); if (ident != NULL) { - master_service_anvil_send(master_service, t_strconcat( - "CONNECT\t", my_pid, "\timap/", ident, "\n", NULL)); - client->anvil_sent = TRUE; + if (master_service_anvil_send(master_service, t_strconcat( + "CONNECT\t", my_pid, "\timap/", ident, "\n", NULL))) + client->anvil_sent = TRUE; } imap_client_count++; diff --git a/src/lmtp/lmtp-local.c b/src/lmtp/lmtp-local.c index d44d91830c..202fbb2c4f 100644 --- a/src/lmtp/lmtp-local.c +++ b/src/lmtp/lmtp-local.c @@ -273,11 +273,11 @@ lmtp_local_rcpt_anvil_cb(const char *reply, void *context) rcpt, 451, "4.3.0", "Too many concurrent deliveries for user"); } else if (lmtp_local_rcpt_anvil_finish(llrcpt)) { - llrcpt->anvil_connect_sent = TRUE; input = mail_storage_service_user_get_input(llrcpt->service_user); - master_service_anvil_send(master_service, t_strconcat( + if (master_service_anvil_send(master_service, t_strconcat( "CONNECT\t", my_pid, "\t", master_service_get_name(master_service), - "/", input->username, "\n", NULL)); + "/", input->username, "\n", NULL))) + llrcpt->anvil_connect_sent = TRUE; } } diff --git a/src/pop3/pop3-client.c b/src/pop3/pop3-client.c index d44ae7f464..e0c8c589a3 100644 --- a/src/pop3/pop3-client.c +++ b/src/pop3/pop3-client.c @@ -475,9 +475,9 @@ int client_init_mailbox(struct client *client, const char **error_r) ident = mail_user_get_anvil_userip_ident(client->user); if (ident != NULL) { - master_service_anvil_send(master_service, t_strconcat( - "CONNECT\t", my_pid, "\tpop3/", ident, "\n", NULL)); - client->anvil_sent = TRUE; + if (master_service_anvil_send(master_service, t_strconcat( + "CONNECT\t", my_pid, "\tpop3/", ident, "\n", NULL))) + client->anvil_sent = TRUE; } return 0; } diff --git a/src/submission/submission-client.c b/src/submission/submission-client.c index 2ced163264..a0f0a0efa3 100644 --- a/src/submission/submission-client.c +++ b/src/submission/submission-client.c @@ -251,11 +251,11 @@ client_create(int fd_in, int fd_out, struct mail_user *user, ident = mail_user_get_anvil_userip_ident(client->user); if (ident != NULL) { - master_service_anvil_send( + if (master_service_anvil_send( master_service, t_strconcat( "CONNECT\t", my_pid, "\tsubmission/", ident, - "\n", NULL)); - client->anvil_sent = TRUE; + "\n", NULL))) + client->anvil_sent = TRUE; } if (hook_client_created != NULL)