diff -up rsyslog-4.6.3/tools/syslogd.c.orig rsyslog-4.6.3/tools/syslogd.c --- rsyslog-4.6.3/tools/syslogd.c.orig 2011-09-06 17:06:01.945949996 +0200 +++ rsyslog-4.6.3/tools/syslogd.c 2011-09-06 17:06:03.681949996 +0200 @@ -1291,7 +1291,7 @@ int parseLegacySyslogMsg(msg_t *pMsg, in * outputs so that only 32 characters max are used by default. */ i = 0; - while(lenMsg > 0 && *p2parse != ':' && *p2parse != ' ' && i < CONF_TAG_MAXSIZE) { + while(lenMsg > 0 && *p2parse != ':' && *p2parse != ' ' && i < CONF_TAG_MAXSIZE - 2) { bufParseTAG[i++] = *p2parse++; --lenMsg; }