summaryrefslogtreecommitdiff
path: root/gnu
diff options
context:
space:
mode:
authoritojun <itojun@NetBSD.org>2001-11-20 03:58:40 +0000
committeritojun <itojun@NetBSD.org>2001-11-20 03:58:40 +0000
commit68c998d0d97f47c10f16de4fe9f51ad612d3f0fe (patch)
treedaedbcbd9e6476197cded3a6ac102dfa475dd551 /gnu
parent4f1d006b34b36d7370f479cdbd2325087acf097b (diff)
sync with 20010228-pl08
Diffstat (limited to 'gnu')
-rw-r--r--gnu/dist/postfix/src/smtpd/smtpd.c19
1 files changed, 17 insertions, 2 deletions
diff --git a/gnu/dist/postfix/src/smtpd/smtpd.c b/gnu/dist/postfix/src/smtpd/smtpd.c
index 9bc2a586021..3389835858b 100644
--- a/gnu/dist/postfix/src/smtpd/smtpd.c
+++ b/gnu/dist/postfix/src/smtpd/smtpd.c
@@ -995,9 +995,11 @@ static int data_cmd(SMTPD_STATE *state, int argc, SMTPD_TOKEN *unused_argv)
* require availability of the cleanup service.
*/
if (state->history != 0 && state->client != VSTREAM_IN
- && (state->error_mask & state->notify_mask))
- smtpd_chat_notify(state);
+ && (state->error_mask & state->notify_mask))
+ smtpd_chat_notify(state);
+ state->error_mask = 0;
smtpd_chat_reset(state);
+
/*
* Cleanup. The client may send another MAIL command.
*/
@@ -1021,6 +1023,19 @@ static int rset_cmd(SMTPD_STATE *state, int argc, SMTPD_TOKEN *unused_argv)
}
/*
+ * Notify the postmaster if there were errors. This usually indicates a
+ * client configuration problem, or that someone is trying nasty things.
+ * Either is significant enough to bother the postmaster. XXX Can't
+ * report problems when running in stand-alone mode: postmaster notices
+ * require availability of the cleanup service.
+ */
+ if (state->history != 0 && state->client != VSTREAM_IN
+ && (state->error_mask & state->notify_mask))
+ smtpd_chat_notify(state);
+ state->error_mask = 0;
+ smtpd_chat_reset(state);
+
+ /*
* Restore state to right after HELO/EHLO command.
*/
mail_reset(state);