summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRainer Gerhards <rgerhards@adiscon.com>2013-10-14 09:52:23 +0200
committerRainer Gerhards <rgerhards@adiscon.com>2013-10-14 09:52:23 +0200
commit4816e60d71e0ccfd9fd499a918f3fc63298c1104 (patch)
tree020735df8a362428b13e50ce8b99f4d47ed48436
parent42bfcef69a068f52579b2ac2cc7dcca77c89dfc4 (diff)
parent1afea20bdc11392f31cfc9a2ed1f767a1eebcb99 (diff)
downloadrsyslog-4816e60d71e0ccfd9fd499a918f3fc63298c1104.tar.gz
rsyslog-4816e60d71e0ccfd9fd499a918f3fc63298c1104.tar.bz2
rsyslog-4816e60d71e0ccfd9fd499a918f3fc63298c1104.zip
Merge branch 'v7-stable'
-rw-r--r--ChangeLog11
-rw-r--r--plugins/mmanon/mmanon.c3
2 files changed, 13 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 1f10c031..d5fb029a 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -139,6 +139,17 @@ Version 7.4.5 [v7.4-stable] 2013-09-??
Thanks to Muri Cicanor for initiating the discussion
- now requires libestr 0.1.7 as early versions had a nasty bug in
string comparisons
+- bugfix: mmanon did not detect all IP addresses in rewrite mode
+ The problem occured if two IPs were close to each other and the first one
+ was shrunk.
+ closes: http://bugzilla.adiscon.com/show_bug.cgi?id=485
+ Thanks to micah-at-riseup.net for reporting this bug
+- bugfix: mmanon sometimes used invalid replacement char in simple mode
+ depending on configuration sequence, the replacement character was set
+ to 's' instead of the correct value. Most importantly, it was set to
+ 's' if simple mode was selected and no replacement char set.
+ closes: http://bugzilla.adiscon.com/show_bug.cgi?id=484
+ Thanks to micah-at-riseup.net for reporting this bug
- bugfix: memory leak in mmnormalize
- bugfix: array-based ==/!= comparisions lead to invalid results
This was a regression introduced in 7.3.5 bei the PRI optimizer
diff --git a/plugins/mmanon/mmanon.c b/plugins/mmanon/mmanon.c
index 7d8f9964..16a4f34b 100644
--- a/plugins/mmanon/mmanon.c
+++ b/plugins/mmanon/mmanon.c
@@ -170,7 +170,6 @@ CODESTARTnewActInst
cstr);
free(cstr);
}
- pData->replChar = es_getBufAddr(pvals[i].val.d.estr)[0];
} else if(!strcmp(actpblk.descr[i].name, "replacementchar")) {
pData->replChar = es_getBufAddr(pvals[i].val.d.estr)[0];
} else if(!strcmp(actpblk.descr[i].name, "ipv4.bits")) {
@@ -339,6 +338,8 @@ anonip(instanceData *pData, uchar *msg, int *pLenMsg, int *idx)
if(i - endpos > 0) {
*pLenMsg = lenMsg - (i - endpos);
memmove(msg+endpos, msg+i, lenMsg - i + 1);
+ /* correct index for next search! */
+ i -= (i - endpos);
}
}