diff options
author | Richard Narron | 2019-08-09 20:09:59 +0200 |
---|---|---|
committer | Willy Sudiarto Raharjo | 2019-08-09 20:10:14 +0200 |
commit | 66062b50d0b8857cd66eb00a08cef9b543c1c756 (patch) | |
tree | c2aec997e42a2dc18284efd6a6b793ac3f2a0eb3 /network/opensmtpd/openbsd64-020-smtpd.patch | |
parent | 2ccb4f74c6e791736be0de1d355e6b5d405111aa (diff) | |
download | slackbuilds-66062b50d0b8857cd66eb00a08cef9b543c1c756.tar.gz |
network/opensmtpd: Apply OpenBSD 6.4 patch 20.
Signed-off-by: Willy Sudiarto Raharjo <willysr@slackbuilds.org>
Diffstat (limited to 'network/opensmtpd/openbsd64-020-smtpd.patch')
-rw-r--r-- | network/opensmtpd/openbsd64-020-smtpd.patch | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/network/opensmtpd/openbsd64-020-smtpd.patch b/network/opensmtpd/openbsd64-020-smtpd.patch new file mode 100644 index 0000000000..a1aa51607a --- /dev/null +++ b/network/opensmtpd/openbsd64-020-smtpd.patch @@ -0,0 +1,27 @@ +--- a/smtpd/smtp_session.c 3 Sep 2018 19:01:29 -0000 1.337 ++++ b/smtpd/smtp_session.c 1 Aug 2019 21:18:53 -0000 +@@ -1904,15 +1904,21 @@ smtp_reply(struct smtp_session *s, char + { + va_list ap; + int n; +- char buf[LINE_MAX], tmp[LINE_MAX]; ++ char buf[LINE_MAX*2], tmp[LINE_MAX*2]; + + va_start(ap, fmt); + n = vsnprintf(buf, sizeof buf, fmt, ap); + va_end(ap); +- if (n == -1 || n >= LINE_MAX) +- fatalx("smtp_reply: line too long"); ++ if (n < 0) ++ fatalx("smtp_reply: response format error"); + if (n < 4) + fatalx("smtp_reply: response too short"); ++ if (n >= (int)sizeof buf) { ++ /* only first three bytes are used by SMTP logic, ++ * so if _our_ reply does not fit entirely in the ++ * buffer, it's ok to truncate. ++ */ ++ } + + log_trace(TRACE_SMTP, "smtp: %p: >>> %s", s, buf); + |