summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRainer Gerhards <rgerhards@adiscon.com>2008-09-22 15:49:54 +0200
committerRainer Gerhards <rgerhards@adiscon.com>2008-09-22 15:49:54 +0200
commit1b2270ad3a6a78b1d11a7f7639208a42aabce578 (patch)
tree21b6aace8d7c35cf2b9d90368dc58baf1c13c200
parent4e86efaf0e20626d8f740fcff131bfd38453de4d (diff)
parent571c51fe3481192febdf40343a21a60c69498aab (diff)
downloadrsyslog-1b2270ad3a6a78b1d11a7f7639208a42aabce578.tar.gz
rsyslog-1b2270ad3a6a78b1d11a7f7639208a42aabce578.tar.xz
rsyslog-1b2270ad3a6a78b1d11a7f7639208a42aabce578.zip
Merge branch 'v3-stable' into beta
Conflicts: ChangeLog configure.ac doc/manual.html
-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 432ae299..5f6a0907 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -162,7 +162,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 6d3a075f..f8beb01f 100644
--- a/plugins/imudp/imudp.c
+++ b/plugins/imudp/imudp.c
@@ -245,10 +245,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