From: Sven Eden Date: Wed, 13 Jun 2018 05:58:05 +0000 (+0200) Subject: Add dry_run support to manager_scheduled_shutdown_handler() X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=commitdiff_plain;h=fe54c6a8e4ca5627d318066d29f18ece89e76968;p=elogind.git Add dry_run support to manager_scheduled_shutdown_handler() --- diff --git a/src/login/elogind-dbus.c b/src/login/elogind-dbus.c index baa36b1f2..2bb8228f1 100644 --- a/src/login/elogind-dbus.c +++ b/src/login/elogind-dbus.c @@ -442,6 +442,19 @@ int manager_scheduled_shutdown_handler( return -EALREADY; } + if (m->shutdown_dry_run) { + /* We do not process delay inhibitors here. Otherwise, we + * would have to be considered "in progress" (like the check + * above) for some seconds after our admin has seen the final + * wall message. */ + + bus_manager_log_shutdown(m, target); + log_info("Running in dry run, suppressing action."); + reset_scheduled_shutdown(m); + + return 0; + } + r = execute_shutdown_or_sleep(m, 0, action, &error); if (r < 0) return log_error_errno(r, "Scheduled shutdown to %s failed: %m",