summaryrefslogtreecommitdiff
path: root/src/daemon.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/daemon.c')
-rw-r--r--src/daemon.c63
1 files changed, 29 insertions, 34 deletions
diff --git a/src/daemon.c b/src/daemon.c
index 17d41b5..9a87d7a 100644
--- a/src/daemon.c
+++ b/src/daemon.c
@@ -29,29 +29,28 @@
* Fork a child process and then kill the parent so make the calling
* program a daemon process.
*/
-void
-makedaemon (void)
+void makedaemon (void)
{
- if (fork () != 0)
- exit (0);
+ if (fork () != 0)
+ exit (0);
- setsid ();
- set_signal_handler (SIGHUP, SIG_IGN);
+ setsid ();
+ set_signal_handler (SIGHUP, SIG_IGN);
- if (fork () != 0)
- exit (0);
+ if (fork () != 0)
+ exit (0);
- chdir ("/");
- umask (0177);
+ chdir ("/");
+ umask (0177);
#if NDEBUG
- /*
- * When not in debugging mode, close the standard file
- * descriptors.
- */
- close (0);
- close (1);
- close (2);
+ /*
+ * When not in debugging mode, close the standard file
+ * descriptors.
+ */
+ close (0);
+ close (1);
+ close (2);
#endif
}
@@ -59,29 +58,25 @@ makedaemon (void)
* Pass a signal number and a signal handling function into this function
* to handle signals sent to the process.
*/
-signal_func *
-set_signal_handler (int signo, signal_func * func)
+signal_func *set_signal_handler (int signo, signal_func * func)
{
- struct sigaction act, oact;
+ struct sigaction act, oact;
- act.sa_handler = func;
- sigemptyset (&act.sa_mask);
- act.sa_flags = 0;
- if (signo == SIGALRM)
- {
+ act.sa_handler = func;
+ sigemptyset (&act.sa_mask);
+ act.sa_flags = 0;
+ if (signo == SIGALRM) {
#ifdef SA_INTERRUPT
- act.sa_flags |= SA_INTERRUPT; /* SunOS 4.x */
+ act.sa_flags |= SA_INTERRUPT; /* SunOS 4.x */
#endif
- }
- else
- {
+ } else {
#ifdef SA_RESTART
- act.sa_flags |= SA_RESTART; /* SVR4, 4.4BSD */
+ act.sa_flags |= SA_RESTART; /* SVR4, 4.4BSD */
#endif
- }
+ }
- if (sigaction (signo, &act, &oact) < 0)
- return SIG_ERR;
+ if (sigaction (signo, &act, &oact) < 0)
+ return SIG_ERR;
- return oact.sa_handler;
+ return oact.sa_handler;
}