mirror of
https://github.com/systemd/systemd-stable.git
synced 2025-01-08 21:17:47 +03:00
systemctl: if no logind, don't try to schedule shutdown
If logind is not supported, don't try to schedule a shutdown,
immediately poweroff. This is the behavior indicated by the current
message given to the user, but the command is returning an error. I
believe this was broken on this commit:
7f96539d45
This commit is contained in:
parent
a204d54b8e
commit
c68867da32
@ -8511,7 +8511,6 @@ static int halt_now(enum action a) {
|
||||
|
||||
static int logind_schedule_shutdown(void) {
|
||||
|
||||
#if ENABLE_LOGIND
|
||||
_cleanup_(sd_bus_error_free) sd_bus_error error = SD_BUS_ERROR_NULL;
|
||||
char date[FORMAT_TIMESTAMP_MAX];
|
||||
const char *action;
|
||||
@ -8563,10 +8562,6 @@ static int logind_schedule_shutdown(void) {
|
||||
if (!arg_quiet)
|
||||
log_info("Shutdown scheduled for %s, use 'shutdown -c' to cancel.", format_timestamp(date, sizeof(date), arg_when));
|
||||
return 0;
|
||||
#else
|
||||
log_error("Cannot schedule shutdown without logind support, proceeding with immediate shutdown.");
|
||||
return -ENOSYS;
|
||||
#endif
|
||||
}
|
||||
|
||||
static int halt_main(void) {
|
||||
@ -8577,7 +8572,11 @@ static int halt_main(void) {
|
||||
return r;
|
||||
|
||||
if (arg_when > 0)
|
||||
#if ENABLE_LOGIND
|
||||
return logind_schedule_shutdown();
|
||||
#else
|
||||
log_error("Cannot schedule shutdown without logind support, proceeding with immediate shutdown.");
|
||||
#endif
|
||||
|
||||
if (geteuid() != 0) {
|
||||
if (arg_dry_run || arg_force > 0) {
|
||||
|
Loading…
Reference in New Issue
Block a user