diff options
author | Rainer Gerhards <rgerhards@adiscon.com> | 2009-04-02 15:12:57 +0200 |
---|---|---|
committer | Rainer Gerhards <rgerhards@adiscon.com> | 2009-04-02 15:12:57 +0200 |
commit | eb807027af9e126a212b0630c5873dddae48963b (patch) | |
tree | 36aab3c366d32f97eeb2f98e4040565d380f7317 /tools/pidfile.c | |
parent | 85c09e0c44c00be1cd91955b39fc6d0a17c72a98 (diff) | |
download | rsyslog-eb807027af9e126a212b0630c5873dddae48963b.tar.gz rsyslog-eb807027af9e126a212b0630c5873dddae48963b.tar.xz rsyslog-eb807027af9e126a212b0630c5873dddae48963b.zip |
added O_CLOEXEC to open() calls
to make sure only the minimum number of file handles is left open
during a exec call. This is not a 100% solution, as there are also
some fopen() calls and, more importantly, file descriptors opened
by libraries. But it is better than nothing (and it was quick, at
least until we run into platform hell, what we will for sure ;)).
Diffstat (limited to 'tools/pidfile.c')
-rw-r--r-- | tools/pidfile.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/tools/pidfile.c b/tools/pidfile.c index 2be13da6..e7744513 100644 --- a/tools/pidfile.c +++ b/tools/pidfile.c @@ -97,7 +97,7 @@ int write_pid (char *pidfile) int fd; int pid; - if ( ((fd = open(pidfile, O_RDWR|O_CREAT, 0644)) == -1) + if ( ((fd = open(pidfile, O_RDWR|O_CREAT|O_CLOEXEC, 0644)) == -1) || ((f = fdopen(fd, "r+")) == NULL) ) { fprintf(stderr, "Can't open or create %s.\n", pidfile); return 0; |