X-Git-Url: https://git.verplant.org/?a=blobdiff_plain;f=src%2Fdaemon%2Fcollectd.c;h=6f299174ad8ea38af32fc630d47f208905864dea;hb=e030096e4f5a0bbdd42635bfeb95e39d150cac72;hp=06125dce5fa97097e5be76178e89cf4bea3a193d;hpb=40aabf444e124f40603021821e98bcc40c4aaa0e;p=collectd.git diff --git a/src/daemon/collectd.c b/src/daemon/collectd.c index 06125dce..6f299174 100644 --- a/src/daemon/collectd.c +++ b/src/daemon/collectd.c @@ -269,6 +269,7 @@ static void update_kstat (void) /* TODO * Remove all settings but `-f' and `-C' */ +__attribute__((noreturn)) static void exit_usage (int status) { printf ("Usage: "PACKAGE_NAME" [OPTIONS]\n\n" @@ -422,7 +423,7 @@ static int pidfile_remove (void) #endif /* COLLECT_DAEMON */ #ifdef KERNEL_LINUX -int notify_upstart (void) +static int notify_upstart (void) { char const *upstart_job = getenv("UPSTART_JOB"); @@ -442,7 +443,7 @@ int notify_upstart (void) return 1; } -int notify_systemd (void) +static int notify_systemd (void) { int fd; const char *notifysocket; @@ -518,7 +519,7 @@ int main (int argc, char **argv) struct sigaction sig_term_action; struct sigaction sig_usr1_action; struct sigaction sig_pipe_action; - char *configfile = CONFIGFILE; + const char *configfile = CONFIGFILE; int test_config = 0; int test_readall = 0; const char *basedir; @@ -638,6 +639,8 @@ int main (int argc, char **argv) #endif ) { + int status; + if ((pid = fork ()) == -1) { /* error */ @@ -666,19 +669,24 @@ int main (int argc, char **argv) close (1); close (0); - if (open ("/dev/null", O_RDWR) != 0) + status = open ("/dev/null", O_RDWR); + if (status != 0) { - ERROR ("Error: Could not connect `STDIN' to `/dev/null'"); + ERROR ("Error: Could not connect `STDIN' to `/dev/null' (status %d)", status); return (1); } - if (dup (0) != 1) + + status = dup (0); + if (status != 1) { - ERROR ("Error: Could not connect `STDOUT' to `/dev/null'"); + ERROR ("Error: Could not connect `STDOUT' to `/dev/null' (status %d)", status); return (1); } - if (dup (0) != 2) + + status = dup (0); + if (status != 2) { - ERROR ("Error: Could not connect `STDERR' to `/dev/null'"); + ERROR ("Error: Could not connect `STDERR' to `/dev/null', (status %d)", status); return (1); } } /* if (daemonize) */