summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRainer Gerhards <rgerhards@adiscon.com>2008-09-22 15:50:31 +0200
committerRainer Gerhards <rgerhards@adiscon.com>2008-09-22 15:50:31 +0200
commit3a643aa747d56f56c649909e682cb4d4bfc72268 (patch)
treef8de4c834491f4beb82e42630d04dd66ab1b34bc
parent5ce9b5ad831aae00a7d28d77ccd1ec974f71835f (diff)
parentf0732cb75b237f6a853dadb0c6cff5d6bef62952 (diff)
downloadrsyslog-3a643aa747d56f56c649909e682cb4d4bfc72268.tar.gz
rsyslog-3a643aa747d56f56c649909e682cb4d4bfc72268.tar.xz
rsyslog-3a643aa747d56f56c649909e682cb4d4bfc72268.zip
Merge branch 'master' into perf
-rw-r--r--ChangeLog7
-rw-r--r--plugins/imudp/imudp.c8
2 files changed, 12 insertions, 3 deletions
diff --git a/ChangeLog b/ChangeLog
index 85768cb7..ee1f640e 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -264,7 +264,12 @@ Version 3.19.0 (rgerhards), 2008-05-06
- -c option no longer must be the first option - thanks to varmjofekoj
for the patch
---------------------------------------------------------------------------
-Version 3.18.4 (rgerhards), 2008-09-??
+Version 3.18.5 (rgerhards), 2008-10-??
+- bugfix: imudp input module could cause segfault on HUP
+ It did not properly de-init a variable acting as a linked list head.
+ That resulted in trying to access freed memory blocks after the HUP.
+---------------------------------------------------------------------------
+Version 3.18.4 (rgerhards), 2008-09-18
- bugfix: order-of magnitude issue with base-10 size definitions
in config file parser. Could lead to invalid sizes, constraints
etc for e.g. queue files and any other object whose size was specified
diff --git a/plugins/imudp/imudp.c b/plugins/imudp/imudp.c
index 64413e45..5792a999 100644
--- a/plugins/imudp/imudp.c
+++ b/plugins/imudp/imudp.c
@@ -248,10 +248,14 @@ CODESTARTafterRun
net.clearAllowedSenders (net.pAllowedSenders_UDP);
net.pAllowedSenders_UDP = NULL;
}
- if(udpLstnSocks != NULL)
+ if(udpLstnSocks != NULL) {
net.closeUDPListenSockets(udpLstnSocks);
- if(pRcvBuf != NULL)
+ udpLstnSocks = NULL;
+ }
+ if(pRcvBuf != NULL) {
free(pRcvBuf);
+ pRcvBuf = NULL;
+ }
ENDafterRun