summaryrefslogtreecommitdiffstats
path: root/usr.sbin/syslogd
diff options
context:
space:
mode:
authorae <ae@FreeBSD.org>2014-12-12 11:29:54 +0000
committerae <ae@FreeBSD.org>2014-12-12 11:29:54 +0000
commitb94f2631db2afd72716f6c9dce269edc6d099358 (patch)
tree5887d82b77fa74c4253fef84834a9d706616e0db /usr.sbin/syslogd
parent590ae6af07e83cf471e5bc55da638bc84b8cb098 (diff)
downloadFreeBSD-src-b94f2631db2afd72716f6c9dce269edc6d099358.zip
FreeBSD-src-b94f2631db2afd72716f6c9dce269edc6d099358.tar.gz
Increase the buffer size to keep the list of programm names when
parsing programm specification. It is safe to not check out of bounds access, because !isprint(p[i]) check will stop reading, when '\0' character will be read from the input string. Obtained from: Yandex LLC MFC after: 1 week Sponsored by: Yandex LLC
Diffstat (limited to 'usr.sbin/syslogd')
-rw-r--r--usr.sbin/syslogd/syslogd.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/usr.sbin/syslogd/syslogd.c b/usr.sbin/syslogd/syslogd.c
index 60c74d1..d497fe1 100644
--- a/usr.sbin/syslogd/syslogd.c
+++ b/usr.sbin/syslogd/syslogd.c
@@ -1542,7 +1542,7 @@ init(int signo)
struct filed *f, *next, **nextp;
char *p;
char cline[LINE_MAX];
- char prog[NAME_MAX+1];
+ char prog[LINE_MAX];
char host[MAXHOSTNAMELEN];
char oldLocalHostName[MAXHOSTNAMELEN];
char hostMsg[2*MAXHOSTNAMELEN+40];
@@ -1664,7 +1664,7 @@ init(int signo)
(void)strlcpy(prog, "*", sizeof(prog));
continue;
}
- for (i = 0; i < NAME_MAX; i++) {
+ for (i = 0; i < LINE_MAX - 1; i++) {
if (!isprint(p[i]) || isspace(p[i]))
break;
prog[i] = p[i];
OpenPOWER on IntegriCloud