dovecot-2.2: lda, lmtp: Use mail_deliver_context.tempfail_error ...
dovecot at dovecot.org
dovecot at dovecot.org
Wed Oct 8 19:11:11 UTC 2014
details: http://hg.dovecot.org/dovecot-2.2/rev/10d11d9c0c98
changeset: 17915:10d11d9c0c98
user: Timo Sirainen <tss at iki.fi>
date: Wed Oct 08 22:10:34 2014 +0300
description:
lda, lmtp: Use mail_deliver_context.tempfail_error first if it exists (instead of storage error).
diffstat:
src/lda/main.c | 6 +++---
src/lmtp/commands.c | 8 ++++----
2 files changed, 7 insertions(+), 7 deletions(-)
diffs (43 lines):
diff -r f0015ab0efb1 -r 10d11d9c0c98 src/lda/main.c
--- a/src/lda/main.c Wed Oct 08 16:28:40 2014 +0300
+++ b/src/lda/main.c Wed Oct 08 22:10:34 2014 +0300
@@ -435,11 +435,11 @@
lda_set_dest_addr(&ctx, user, destaddr_source);
if (mail_deliver(&ctx, &storage) < 0) {
- if (storage != NULL) {
- errstr = mail_storage_get_last_error(storage, &error);
- } else if (ctx.tempfail_error != NULL) {
+ if (ctx.tempfail_error != NULL) {
errstr = ctx.tempfail_error;
error = MAIL_ERROR_TEMP;
+ } else if (storage != NULL) {
+ errstr = mail_storage_get_last_error(storage, &error);
} else {
/* This shouldn't happen */
i_error("BUG: Saving failed to unknown storage");
diff -r f0015ab0efb1 -r 10d11d9c0c98 src/lmtp/commands.c
--- a/src/lmtp/commands.c Wed Oct 08 16:28:40 2014 +0300
+++ b/src/lmtp/commands.c Wed Oct 08 22:10:34 2014 +0300
@@ -694,6 +694,10 @@
client_send_line(client, "250 2.0.0 <%s> %s Saved",
rcpt->address, client->state.session_id);
ret = 0;
+ } else if (dctx.tempfail_error != NULL) {
+ client_send_line(client, "451 4.2.0 <%s> %s",
+ rcpt->address, dctx.tempfail_error);
+ ret = -1;
} else if (storage != NULL) {
error = mail_storage_get_last_error(storage, &mail_error);
if (mail_error == MAIL_ERROR_NOQUOTA) {
@@ -706,10 +710,6 @@
rcpt->address, error);
}
ret = -1;
- } else if (dctx.tempfail_error != NULL) {
- client_send_line(client, "451 4.2.0 <%s> %s",
- rcpt->address, dctx.tempfail_error);
- ret = -1;
} else {
/* This shouldn't happen */
i_error("BUG: Saving failed to unknown storage");
More information about the dovecot-cvs
mailing list