diff options
author | Gilles Chehade <gilles@poolp.org> | 2019-06-26 11:09:44 +0200 |
---|---|---|
committer | Gilles Chehade <gilles@poolp.org> | 2019-06-26 11:09:44 +0200 |
commit | 8fbe439d163d3766cec84efb18ccb7cac4eca2dd (patch) | |
tree | 8822ed287cbc75e5054faaeeeb4e0978560ec2b6 | |
parent | sync (diff) | |
download | OpenSMTPD-8fbe439d163d3766cec84efb18ccb7cac4eca2dd.tar.xz OpenSMTPD-8fbe439d163d3766cec84efb18ccb7cac4eca2dd.zip |
sync
-rw-r--r-- | smtpd/smtp_session.c | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/smtpd/smtp_session.c b/smtpd/smtp_session.c index 96a6e00b..982c28c2 100644 --- a/smtpd/smtp_session.c +++ b/smtpd/smtp_session.c @@ -1,4 +1,4 @@ -/* $OpenBSD: smtp_session.c,v 1.391 2019/06/12 17:42:53 eric Exp $ */ +/* $OpenBSD: smtp_session.c,v 1.392 2019/06/26 08:46:08 gilles Exp $ */ /* * Copyright (c) 2008 Gilles Chehade <gilles@poolp.org> @@ -1089,6 +1089,15 @@ smtp_io(struct io *io, int evt, void *arg) return; } + if (strchr(line, '\r')) { + s->flags |= SF_BADINPUT; + smtp_reply(s, "500 %s: <CR> is only allowed before <LF>", + esc_code(ESC_STATUS_PERMFAIL, ESC_OTHER_STATUS)); + smtp_enter_state(s, STATE_QUIT); + io_set_write(io); + return; + } + /* No complete line received */ if (line == NULL) return; |