Merge pull request #897

ce6b831 daemonizer: posix: keep parent's working dir and umask (redfish)
This commit is contained in:
Riccardo Spagni 2016-07-20 13:52:27 +02:00
commit 992b6cce06
No known key found for this signature in database
GPG key ID: 55432DF31CCD4FCD

View file

@ -50,20 +50,6 @@ void fork()
// terminal. // terminal.
setsid(); setsid();
// A process inherits its working directory from its parent. This could be
// on a mounted filesystem, which means that the running daemon would
// prevent this filesystem from being unmounted. Changing to the root
// directory avoids this problem.
if (chdir("/") < 0)
{
quit("Unable to change working directory to root");
}
// The file mode creation mask is also inherited from the parent process.
// We don't want to restrict the permissions on files created by the
// daemon, so the mask is cleared.
umask(0);
// A second fork ensures the process cannot acquire a controlling terminal. // A second fork ensures the process cannot acquire a controlling terminal.
if (pid_t pid = ::fork()) if (pid_t pid = ::fork())
{ {