int error;
const AvahiPoll *poll_api = NULL;
AvahiWatch *sig_watch = NULL;
+ int retval_is_sent = 0;
assert(c);
goto finish;
}
+ avahi_log_info("Successfully called chroot().");
chdir("/");
if (avahi_caps_drop_all() < 0) {
avahi_log_error("Failed to drop capabilities.");
goto finish;
}
-
- avahi_log_info("chroot() successful.");
+ avahi_log_info("Successfully dropped remaining capabilities.");
}
#endif
update_wide_area_servers();
- if (c->daemonize)
+ if (c->daemonize) {
daemon_retval_send(0);
+ retval_is_sent = 1;
+ }
for (;;) {
if ((r = avahi_simple_poll_iterate(simple_poll_api, -1)) < 0) {
simple_poll_api = NULL;
}
- if (r != 0 && c->daemonize)
+ if (!retval_is_sent && c->daemonize)
daemon_retval_send(1);
return r;