diff --git a/uvrrpd.c b/uvrrpd.c index ff4b7c5..897d620 100644 --- a/uvrrpd.c +++ b/uvrrpd.c @@ -126,11 +126,17 @@ int main(int argc, char *argv[]) /* daemonize */ if (background) { - daemon(0, (log_trigger(NULL) > LOG_INFO)); + if (daemon(0, (log_trigger(NULL) > LOG_INFO)) != 0) { + log_error("vrid %d :: daemon - %m", vrrp.vrid); + exit(EXIT_FAILURE); + } + } + else { + if (chdir("/") != 0) { + log_error("vrid %d :: chdir - %m", vrrp.vrid); + exit(EXIT_FAILURE); + } } - else - chdir("/"); - /* pidfile */ pidfile(vrrp.vrid);