summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog6
-rw-r--r--plugins/imuxsock/imuxsock.c7
2 files changed, 10 insertions, 3 deletions
diff --git a/ChangeLog b/ChangeLog
index 598a9036..42cfac2a 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,9 +1,13 @@
---------------------------------------------------------------------------
Version 5.8.7 [V5-stable] 2011-??-??
-- bugfix: stats counter were not properly initialized on creation
+- bugfix: imuxsock did truncate part of received message if it did not
+ contain a proper date. The truncation occured because we removed that
+ part of the messages that was expected to be the date.
+ closes: http://bugzilla.adiscon.com/show_bug.cgi?id=295
- bugfix: potential abort after reading invalid X.509 certificate
closes: http://bugzilla.adiscon.com/show_bug.cgi?id=290
Thanks to Tomas Heinrich for the patch
+- bugfix: stats counter were not properly initialized on creation
---------------------------------------------------------------------------
Version 5.8.6 [V5-stable] 2011-10-21
- bugfix: missing whitespace after property-based filter was not detected
diff --git a/plugins/imuxsock/imuxsock.c b/plugins/imuxsock/imuxsock.c
index 2697c48a..feddb20c 100644
--- a/plugins/imuxsock/imuxsock.c
+++ b/plugins/imuxsock/imuxsock.c
@@ -565,8 +565,11 @@ SubmitMsg(uchar *pRcv, int lenRcv, lstn_t *pLstn, struct ucred *cred)
parse++; lenMsg--; /* '>' */
if((pLstn->flags & IGNDATE)) {
- parse += 16; /* just skip timestamp */
- lenMsg -= 16;
+ /* in this case, we still need to find out if we have a valid
+ * datestamp or not .. and advance the parse pointer accordingly.
+ */
+ struct syslogTime dummy;
+ datetime.ParseTIMESTAMP3164(&dummy, &parse, &lenMsg);
} else {
if(datetime.ParseTIMESTAMP3164(&(pMsg->tTIMESTAMP), &parse, &lenMsg) != RS_RET_OK) {
DBGPRINTF("we have a problem, invalid timestamp in msg!\n");