summaryrefslogtreecommitdiffstats
path: root/usr.sbin/smtpd
diff options
context:
space:
mode:
authortobhe <tobhe@openbsd.org>2020-03-17 09:01:53 +0000
committertobhe <tobhe@openbsd.org>2020-03-17 09:01:53 +0000
commit91145277d294a8e6b90b1e7caa833fd67e2de0b1 (patch)
tree9cd1102b2c52f77a4931679d405f1d1cbda31eb4 /usr.sbin/smtpd
parentrework amd (not intel) smt/core/package detection. (diff)
downloadwireguard-openbsd-91145277d294a8e6b90b1e7caa833fd67e2de0b1.tar.xz
wireguard-openbsd-91145277d294a8e6b90b1e7caa833fd67e2de0b1.zip
Exit when m_get_string() returns NULL to prevent nullptr dereference in
strlen(). ok millert@
Diffstat (limited to 'usr.sbin/smtpd')
-rw-r--r--usr.sbin/smtpd/mproc.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/usr.sbin/smtpd/mproc.c b/usr.sbin/smtpd/mproc.c
index aa19c7d48f6..5eff4adfb33 100644
--- a/usr.sbin/smtpd/mproc.c
+++ b/usr.sbin/smtpd/mproc.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: mproc.c,v 1.35 2019/10/03 05:50:28 gilles Exp $ */
+/* $OpenBSD: mproc.c,v 1.36 2020/03/17 09:01:53 tobhe Exp $ */
/*
* Copyright (c) 2012 Eric Faurot <eric@faurot.net>
@@ -637,6 +637,8 @@ m_get_envelope(struct msg *m, struct envelope *evp)
m_get_evpid(m, &evpid);
m_get_string(m, &buf);
+ if (buf == NULL)
+ fatalx("empty envelope buffer");
if (!envelope_load_buffer(evp, buf, strlen(buf)))
fatalx("failed to retrieve envelope");