aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGilles Chehade <gilles@poolp.org>2019-06-26 11:09:44 +0200
committerGilles Chehade <gilles@poolp.org>2019-06-26 11:09:44 +0200
commit8fbe439d163d3766cec84efb18ccb7cac4eca2dd (patch)
tree8822ed287cbc75e5054faaeeeb4e0978560ec2b6
parentsync (diff)
downloadOpenSMTPD-8fbe439d163d3766cec84efb18ccb7cac4eca2dd.tar.xz
OpenSMTPD-8fbe439d163d3766cec84efb18ccb7cac4eca2dd.zip
sync
-rw-r--r--smtpd/smtp_session.c11
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;