Module: check_mk
Branch: master
Commit: 05a9ffb48aea11996c4682d26b3aa296ce572d4a
URL:
http://git.mathias-kettner.de/git/?p=check_mk.git;a=commit;h=05a9ffb48aea11…
Author: Mathias Kettner <mk(a)mathias-kettner.de>
Date: Thu Oct 18 11:47:31 2012 +0200
FIX: close inherited unused filedescriptors after fork()
---
ChangeLog | 1 +
livestatus/src/livechecking.c | 7 +++++++
2 files changed, 8 insertions(+), 0 deletions(-)
diff --git a/ChangeLog b/ChangeLog
index 9741e98..29fad82 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -97,6 +97,7 @@
* FIX: added /0 termination to strings
* FIX: changed check_type to be always active (0)
* FIX: fix bug in assignment of livecheck helpers
+ * FIX: close inherited unused filedescriptors after fork()
Checks & Agents:
* FIX: Linux mk_logwatch: iregex Parameter was never used
diff --git a/livestatus/src/livechecking.c b/livestatus/src/livechecking.c
index a1e7023..1acd9e5 100644
--- a/livestatus/src/livechecking.c
+++ b/livestatus/src/livechecking.c
@@ -66,6 +66,13 @@ void start_livecheck_helper(struct live_helper *lh)
dup2(fd[1], 1);
dup2(fd[1], 2);
close(fd[0]);
+
+ // close all other inherited filedescriptiors
+ unsigned i;
+ for (i=3; i<1024; i++) {
+ close(i);
+ }
+
char ht[32];
snprintf(ht, sizeof(ht), "%u", host_check_timeout);
char st[32];