SIGRTMIN+14, /* systemd: Immediate poweroff */
SIGRTMIN+15, /* systemd: Immediate reboot */
SIGRTMIN+16, /* systemd: Immediate kexec */
+ SIGRTMIN+20, /* systemd: enable status messages */
+ SIGRTMIN+21, /* systemd: disable status messages */
-1);
assert_se(sigprocmask(SIG_SETMASK, &mask, NULL) == 0);
goto fail;
/* Try to connect to the busses, if possible. */
- if ((r = bus_init(m)) < 0)
+ if ((r = bus_init(m, running_as != MANAGER_SYSTEM)) < 0)
goto fail;
#ifdef HAVE_AUDIT
#endif
free(m->notify_socket);
- free(m->console);
lookup_paths_free(&m->lookup_paths);
strv_free(m->environment);
if (!u || UNIT_IS_ACTIVE_OR_RELOADING(unit_active_state(u))) {
log_info("Trying to reconnect to bus...");
- bus_init(m);
+ bus_init(m, true);
}
if (!u || !UNIT_IS_ACTIVE_OR_ACTIVATING(unit_active_state(u))) {
break;
}
- log_warning("Got unhandled signal <%s>.", strna(signal_to_string(sfsi.ssi_signo)));
+ switch (sfsi.ssi_signo - SIGRTMIN) {
+
+ case 20:
+ log_debug("Enabling showing of status.");
+ m->show_status = true;
+ break;
+
+ case 21:
+ log_debug("Disabling showing of status.");
+ m->show_status = false;
+ break;
+
+ default:
+ log_warning("Got unhandled signal <%s>.", strna(signal_to_string(sfsi.ssi_signo)));
+ }
}
}
}
union sockaddr_union sa;
int n = 0;
char *message = NULL;
- ssize_t r;
/* Don't generate plymouth events if the service was already
* started and we're just deserializing */
}
errno = 0;
- if ((r = write(fd, message, n + 1)) != n + 1) {
+ if (write(fd, message, n + 1) != n + 1) {
if (errno != EPIPE &&
errno != EAGAIN &&
unit_reset_failed(u);
}
-int manager_set_console(Manager *m, const char *console) {
- char *c;
-
- assert(m);
-
- if (!(c = strdup(console)))
- return -ENOMEM;
-
- free(m->console);
- m->console = c;
-
- log_debug("Using kernel console %s", c);
-
- return 0;
-}
-
bool manager_unit_pending_inactive(Manager *m, const char *name) {
Unit *u;