diff options
-rw-r--r-- | configure.ac | 2 | ||||
-rw-r--r-- | mockmta.c | 31 |
2 files changed, 21 insertions, 12 deletions
diff --git a/configure.ac b/configure.ac index fed6b21..d7d5700 100644 --- a/configure.ac +++ b/configure.ac @@ -1,5 +1,5 @@ AC_PREREQ(2.63) -AC_INIT([mockmta],[1.0],[gray@gnu.org.ua],[],[https://puszcza.gnu.org.ua/projects/mockmta]) +AC_INIT([mockmta],[1.1],[gray@gnu.org.ua],[],[https://puszcza.gnu.org.ua/projects/mockmta]) AC_CONFIG_SRCDIR(mockmta.c) AM_INIT_AUTOMAKE([1.15 foreign tar-ustar]) AC_USE_SYSTEM_EXTENSIONS @@ -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; } |