summaryrefslogtreecommitdiffstats
path: root/usr.sbin/syslogd
diff options
context:
space:
mode:
authorglebius <glebius@FreeBSD.org>2005-03-28 10:59:19 +0000
committerglebius <glebius@FreeBSD.org>2005-03-28 10:59:19 +0000
commit7743cc27d9c0cf37f7827da8f37a97989be7b9a9 (patch)
tree67116cc01345135177b230d5ec0225e0474812f4 /usr.sbin/syslogd
parent9ace7d5e0bcaed2fd9d8a6fe6f0c23441ebfcd1b (diff)
downloadFreeBSD-src-7743cc27d9c0cf37f7827da8f37a97989be7b9a9.zip
FreeBSD-src-7743cc27d9c0cf37f7827da8f37a97989be7b9a9.tar.gz
Check that supplied facility is not bigger than LOG_NFACILITIES.
PR: bin/79260 Submitted by: Shuichi KITAGUCHI
Diffstat (limited to 'usr.sbin/syslogd')
-rw-r--r--usr.sbin/syslogd/syslogd.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/usr.sbin/syslogd/syslogd.c b/usr.sbin/syslogd/syslogd.c
index bfc4248..52f757b 100644
--- a/usr.sbin/syslogd/syslogd.c
+++ b/usr.sbin/syslogd/syslogd.c
@@ -916,6 +916,13 @@ logmsg(int pri, const char *msg, const char *from, int flags)
fac = LOG_NFACILITIES;
else
fac = LOG_FAC(pri);
+
+ /* Check maximum facility number. */
+ if (fac > LOG_NFACILITIES) {
+ (void)sigsetmask(omask);
+ return;
+ }
+
prilev = LOG_PRI(pri);
/* extract program name */
OpenPOWER on IntegriCloud