diff options
-rw-r--r-- | ChangeLog | 8 | ||||
-rw-r--r-- | plugins/imuxsock/imuxsock.c | 13 | ||||
-rw-r--r-- | tools/syslogd.c | 2 |
3 files changed, 17 insertions, 6 deletions
@@ -82,6 +82,13 @@ Version 5.9.0 [V5-DEVEL] (rgerhards), 2011-06-08 affected directive was: $ActionExecOnlyWhenPreviousIsSuspended on closes: http://bugzilla.adiscon.com/show_bug.cgi?id=236 --------------------------------------------------------------------------- +Version 5.8.6 [V5-stable] (rgerhards/al), 2011-??-?? +- bugfix: imuxsock did no longer ignore message-provided timestamp, if + so configured (the *default*). Lead to no longer sub-second timestamps. + closes: http://bugzilla.adiscon.com/show_bug.cgi?id=281 +- bugfix: rsyslogd -v always said 64 atomics were not present + thanks to mono_matsuko for the patch +--------------------------------------------------------------------------- Version 5.8.5 [V5-stable] (rgerhards/al), 2011-09-01 - bugfix/security: off-by-two bug in legacy syslog parser, CVE-2011-3200 - bugfix: mark message processing did not work correctly @@ -295,7 +302,6 @@ Version 4.7.4 [v4-beta] (rgerhards), 2011-07-11 - added support for the ":omfile:" syntax in configuring user messages - added $LocalHostName config directive - bugfix: PRI was invalid on Solaris for message from local log socket ->>>>>>> 581daa5418548dda4c9b5438878559a1bbd4b087 - bugfix: local hostname was pulled too-early, so that some config directives (namely FQDN settings) did not have any effect - bugfix: imfile did duplicate messages under some circumstances diff --git a/plugins/imuxsock/imuxsock.c b/plugins/imuxsock/imuxsock.c index da9eb993..e9dc5de2 100644 --- a/plugins/imuxsock/imuxsock.c +++ b/plugins/imuxsock/imuxsock.c @@ -359,7 +359,7 @@ createLogSocket(lstn_t *pLstn) pLstn->fd = socket(AF_UNIX, SOCK_DGRAM, 0); if(pLstn->fd < 0 || bind(pLstn->fd, (struct sockaddr *) &sunx, SUN_LEN(&sunx)) < 0 || chmod((char*)pLstn->sockName, 0666) < 0) { - errmsg.LogError(errno, NO_ERRCODE, "connot create '%s'", pLstn->sockName); + errmsg.LogError(errno, NO_ERRCODE, "cannot create '%s'", pLstn->sockName); dbgprintf("cannot create %s (%d).\n", pLstn->sockName, errno); close(pLstn->fd); pLstn->fd = -1; @@ -579,8 +579,13 @@ SubmitMsg(uchar *pRcv, int lenRcv, lstn_t *pLstn, struct ucred *cred, struct tim parse++; lenMsg--; /* '>' */ if(ts == NULL) { - if(datetime.ParseTIMESTAMP3164(&(pMsg->tTIMESTAMP), &parse, &lenMsg) != RS_RET_OK) { - DBGPRINTF("we have a problem, invalid timestamp in msg!\n"); + if((pLstn->flags & IGNDATE)) { + parse += 16; /* just skip timestamp */ + lenMsg -= 16; + } else { + if(datetime.ParseTIMESTAMP3164(&(pMsg->tTIMESTAMP), &parse, &lenMsg) != RS_RET_OK) { + DBGPRINTF("we have a problem, invalid timestamp in msg!\n"); + } } } else { /* if we pulled the time from the system, we need to update the message text */ if(lenMsg >= 16) { @@ -603,7 +608,7 @@ SubmitMsg(uchar *pRcv, int lenRcv, lstn_t *pLstn, struct ucred *cred, struct tim /* pull tag */ i = 0; - while(lenMsg > 0 && *parse != ' ' && i < CONF_TAG_MAXSIZE) { + while(lenMsg > 0 && *parse != ' ' && i < CONF_TAG_MAXSIZE - 1) { bufParseTAG[i++] = *parse++; --lenMsg; } diff --git a/tools/syslogd.c b/tools/syslogd.c index 096f9309..6bed6a1a 100644 --- a/tools/syslogd.c +++ b/tools/syslogd.c @@ -2129,7 +2129,7 @@ static void printVersion(void) #else printf("\t32bit Atomic operations supported:\tNo\n"); #endif -#ifdef HAVE_ATOMIC_BUILTINS64 +#ifdef HAVE_ATOMIC_BUILTINS_64BIT printf("\t64bit Atomic operations supported:\tYes\n"); #else printf("\t64bit Atomic operations supported:\tNo\n"); |