diff --git a/owlps-aggregator/owlps-aggregatord.c b/owlps-aggregator/owlps-aggregatord.c index c014cc4..a58bcd4 100644 --- a/owlps-aggregator/owlps-aggregatord.c +++ b/owlps-aggregator/owlps-aggregatord.c @@ -51,6 +51,14 @@ int main(int argc, char **argv) if (! owl_run) goto exit ; + if (cfg_getbool(cfg, "daemon")) + { + if (VERBOSE_WARNING) + fprintf(stderr, "Detaching to background...\n") ; + if (daemon(0, 0)) + perror("Cannot daemonize") ; + } + /* Set up signal handlers */ action.sa_flags = 0 ; sigemptyset(&action.sa_mask) ; @@ -102,14 +110,6 @@ int main(int argc, char **argv) } } - if (cfg_getbool(cfg, "daemon")) - { - if (VERBOSE_WARNING) - fprintf(stderr, "Detaching to background...\n") ; - if (daemon(0, 0)) - perror("Cannot daemonize") ; - } - ret = read_loop(sockfd) ; /* Wait for the threads to terminate */ diff --git a/owlps-client/owlps-client.c b/owlps-client/owlps-client.c index bc59884..491043a 100644 --- a/owlps-client/owlps-client.c +++ b/owlps-client/owlps-client.c @@ -100,6 +100,13 @@ int main(int argc, char *argv[]) program_name = argv[0] ; parse_command_line(argc, argv) ; + if (options.daemon) + { + fprintf(stderr, "Detaching to background...\n") ; + if (daemon(0, 0)) + perror("Cannot daemonize") ; + } + /* Set up signal handlers */ action.sa_flags = 0 ; sigemptyset(&action.sa_mask) ; @@ -108,13 +115,6 @@ int main(int argc, char *argv[]) action.sa_handler = owl_sigterm_handler ; sigaction(SIGTERM, &action, NULL) ; - if (options.daemon) - { - fprintf(stderr, "Detaching to background...\n") ; - if (daemon(0, 0)) - perror("Cannot daemonize") ; - } - create_socket() ; send_request() ; diff --git a/owlps-listener/owlps-listenerd.c b/owlps-listener/owlps-listenerd.c index 3bfff5b..0a7f329 100644 --- a/owlps-listener/owlps-listenerd.c +++ b/owlps-listener/owlps-listenerd.c @@ -131,6 +131,14 @@ int main(int argc, char *argv[]) if (! owl_run) goto exit ; + if (GET_DAEMON()) + { + if (VERBOSE_WARNING) + fprintf(stderr, "Detaching to background...\n") ; + if (daemon(0, 0)) + perror("Cannot daemonize") ; + } + /* Set up signal handlers */ action.sa_flags = 0 ; sigemptyset(&action.sa_mask) ; @@ -185,14 +193,6 @@ int main(int argc, char *argv[]) } #endif // USE_PTHREAD - if (GET_DAEMON()) - { - if (VERBOSE_WARNING) - fprintf(stderr, "Detaching to background...\n") ; - if (daemon(0, 0)) - perror("Cannot daemonize") ; - } - ret = capture() ; // Capture loop /* Wait for the threads to terminate */