From: Stephan Bosch Date: Mon, 9 Nov 2020 17:07:15 +0000 (+0100) Subject: lmtp: lmtp-local - Correctly return -1 in lmtp_local_rcpt() upon quota error X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=02fe6c35dc7437555c77859161c50347b0d17883;p=thirdparty%2Fdovecot%2Fcore.git lmtp: lmtp-local - Correctly return -1 in lmtp_local_rcpt() upon quota error This not extremely important, but original code was confusing. --- diff --git a/src/lmtp/lmtp-local.c b/src/lmtp/lmtp-local.c index 128740961f..9c42a32a30 100644 --- a/src/lmtp/lmtp-local.c +++ b/src/lmtp/lmtp-local.c @@ -363,9 +363,7 @@ int lmtp_local_rcpt(struct client *client, rcpt, SMTP_SERVER_RECIPIENT_HOOK_APPROVED, lmtp_local_rcpt_approved, llrcpt); - if (client->lmtp_set->lmtp_user_concurrency_limit == SET_UINT_UNLIMITED) { - (void)lmtp_local_rcpt_anvil_finish(llrcpt); - } else { + if (client->lmtp_set->lmtp_user_concurrency_limit != SET_UINT_UNLIMITED) { /* NOTE: username may change as the result of the userdb lookup. Look up the new one via service_user. */ const struct mail_storage_service_input *input = @@ -378,7 +376,8 @@ int lmtp_local_rcpt(struct client *client, lmtp_local_rcpt_anvil_cb, llrcpt); return 0; } - + if (!lmtp_local_rcpt_anvil_finish(llrcpt)) + return -1; return 1; }