summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--usr.sbin/daemon/daemon.84
-rw-r--r--usr.sbin/daemon/daemon.c6
2 files changed, 7 insertions, 3 deletions
diff --git a/usr.sbin/daemon/daemon.8 b/usr.sbin/daemon/daemon.8
index bdebd83..7dde24b 100644
--- a/usr.sbin/daemon/daemon.8
+++ b/usr.sbin/daemon/daemon.8
@@ -59,6 +59,10 @@ Write the ID of the created process into the
using the
.Xr pidfile 3
functionality.
+If the
+.Fl u
+option is used, the directory to contain the pidfile must be writable
+by the specified user.
Note, that the file will be created shortly before the process is
actually executed, and will remain after the process exits (although
it will be removed if the execution fails).
diff --git a/usr.sbin/daemon/daemon.c b/usr.sbin/daemon/daemon.c
index 8b25800..540ebf3 100644
--- a/usr.sbin/daemon/daemon.c
+++ b/usr.sbin/daemon/daemon.c
@@ -79,6 +79,9 @@ main(int argc, char *argv[])
if (argc == 0)
usage();
+ if (user != NULL)
+ restrict_process(user);
+
/*
* Try to open the pidfile before calling daemon(3),
* to be able to report the error intelligently
@@ -94,9 +97,6 @@ main(int argc, char *argv[])
}
}
- if (user != NULL)
- restrict_process(user);
-
if (daemon(nochdir, noclose) == -1)
err(1, NULL);
OpenPOWER on IntegriCloud