diff options
-rw-r--r-- | usr.sbin/syslogd/syslogd.c | 7 |
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 */ |