aboutsummaryrefslogtreecommitdiff
path: root/mockmta.c
diff options
context:
space:
mode:
Diffstat (limited to 'mockmta.c')
-rw-r--r--mockmta.c31
1 files changed, 20 insertions, 11 deletions
diff --git a/mockmta.c b/mockmta.c
index 342f3dc..51a3250 100644
--- a/mockmta.c
+++ b/mockmta.c
@@ -1367,7 +1367,7 @@ smtp_data (struct smtp *smtp)
FILE *fp;
ssize_t n;
time_t t;
- int res;
+ int res = 0;
int in_body = 0;
fd = mkstemp (template);
@@ -1460,18 +1460,27 @@ smtp_data (struct smtp *smtp)
pthread_cleanup_pop (1);
- if (smtp->nrcpt > 1)
- logger (LOG_INFO, "%s => %s (%d recipients) delivered",
- smtp->sender, smtp->rcpt[0], smtp->nrcpt);
- else
- logger (LOG_INFO, "%s => %s delivered",
- smtp->sender, smtp->rcpt[0]);
-
if (res)
- smtp_io_send (smtp, 451, "Local filesystem error");
+ {
+ if (smtp->nrcpt > 1)
+ logger (LOG_INFO, "%s => %s (%d recipients) failed",
+ smtp->sender, smtp->rcpt[0], smtp->nrcpt);
+ else
+ logger (LOG_INFO, "%s => %s failed",
+ smtp->sender, smtp->rcpt[0]);
+ smtp_io_send (smtp, 451, "Local filesystem error");
+ }
else
- smtp_io_send (smtp, 250, "%s Message accepted for delivery", smtp->sid);
- smtp->delivered++;
+ {
+ if (smtp->nrcpt > 1)
+ logger (LOG_INFO, "%s => %s (%d recipients) delivered",
+ smtp->sender, smtp->rcpt[0], smtp->nrcpt);
+ else
+ logger (LOG_INFO, "%s => %s delivered",
+ smtp->sender, smtp->rcpt[0]);
+ smtp_io_send (smtp, 250, "%s Message accepted for delivery", smtp->sid);
+ smtp->delivered++;
+ }
return res;
}

Return to:

Send suggestions and report system problems to the System administrator.