[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH] cfservd : umask error and reopen stdin/out/err
From: |
Adrian Phillips |
Subject: |
[PATCH] cfservd : umask error and reopen stdin/out/err |
Date: |
05 Feb 2002 13:20:30 +0100 |
User-agent: |
Gnus/5.09 (Gnus v5.9.0) Emacs/21.1 |
Another taken from 1.6.3 Debian package.
diff -urN cfengine-2.0.a16/src/cfservd.c cfengine-2.0.a16.new/src/cfservd.c
--- cfengine-2.0.a16/src/cfservd.c Fri Jan 18 17:34:14 2002
+++ cfengine-2.0.a16.new/src/cfservd.c Fri Feb 1 11:50:03 2002
@@ -170,7 +170,6 @@
char ld_library_path[bufsize];
int c, i;
-umask(0);
openlog(VPREFIX,LOG_PID|LOG_NOWAIT|LOG_ODELAY,LOG_DAEMON);
strcpy(VINPUTFILE,CFD_INPUT);
OUTPUT[0] = '\0';
@@ -515,14 +514,23 @@
if (!NO_FORK)
{
+ int fd;
#ifdef HAVE_SETSID
setsid();
#endif
+ fd = open("/dev/null", O_RDWR, 0);
fclose (stdin);
fclose (stdout);
fclose (stderr);
closelog();
- }
+ if (fd != -1)
+ {
+ dup2(fd, STDIN_FILENO);
+ dup2(fd, STDOUT_FILENO);
+ dup2(fd, STDERR_FILENO);
+ close(fd);
+ }
+ }
signal(SIGINT,(void*)ExitCleanly);
signal(SIGTERM,(void*)ExitCleanly);
--
Your mouse has moved.
Windows NT must be restarted for the change to take effect.
Reboot now? [OK]
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [PATCH] cfservd : umask error and reopen stdin/out/err,
Adrian Phillips <=