From 4863f2fc5507fa8a8dd917d35bc6b4c0f2fa193a Mon Sep 17 00:00:00 2001 From: Enji Cooper Date: Mon, 20 Mar 2017 04:25:40 +0000 Subject: syslogd: don't leak `f` on failure in cfline(..) Free `f` if an unknown priority or facility is parsed with the function. MFC after: 1 week Reported by: Coverity CID: 1368068 Sponsored by: Dell EMC Isilon --- usr.sbin/syslogd/syslogd.c | 2 ++ 1 file changed, 2 insertions(+) (limited to 'usr.sbin/syslogd/syslogd.c') diff --git a/usr.sbin/syslogd/syslogd.c b/usr.sbin/syslogd/syslogd.c index ff4fd6bf02a8..b28b151728a2 100644 --- a/usr.sbin/syslogd/syslogd.c +++ b/usr.sbin/syslogd/syslogd.c @@ -2117,6 +2117,7 @@ cfline(const char *line, const char *prog, const char *host) (void)snprintf(ebuf, sizeof ebuf, "unknown priority name \"%s\"", buf); logerror(ebuf); + free(f); return (NULL); } } @@ -2147,6 +2148,7 @@ cfline(const char *line, const char *prog, const char *host) "unknown facility name \"%s\"", buf); logerror(ebuf); + free(f); return (NULL); } f->f_pmask[i >> 3] = pri; -- cgit v1.3