From 687aa1e7968dcd99a38e165b5386e466491ba7b0 Mon Sep 17 00:00:00 2001 From: Sven Eden Date: Thu, 22 Jun 2017 18:22:58 +0200 Subject: [PATCH] Prep v231.2: Add log messages for loginctl invoking system commands. --- src/login/eloginctl.c | 56 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) diff --git a/src/login/eloginctl.c b/src/login/eloginctl.c index 0fc4fc04e..9e40e87ad 100644 --- a/src/login/eloginctl.c +++ b/src/login/eloginctl.c @@ -25,6 +25,7 @@ #include "parse-util.h" #include "process-util.h" #include "sd-login.h" +#include "sd-messages.h" #include "spawn-polkit-agent.h" #include "string-util.h" #include "strv.h" @@ -194,6 +195,59 @@ void elogind_cleanup(void) { strv_free(arg_wall); } +static void elogind_log_special(enum elogind_action a) { + switch (a) { + case ACTION_HALT: + log_struct(LOG_INFO, + LOG_MESSAGE("Halt action called."), + LOG_MESSAGE_ID(SD_MESSAGE_SHUTDOWN), + NULL); + break; + case ACTION_POWEROFF: + log_struct(LOG_INFO, + LOG_MESSAGE("Poweroff action called."), + LOG_MESSAGE_ID(SD_MESSAGE_SHUTDOWN), + NULL); + break; + case ACTION_REBOOT: + log_struct(LOG_INFO, + LOG_MESSAGE("Reboot action called."), + LOG_MESSAGE_ID(SD_MESSAGE_SHUTDOWN), + NULL); + break; + case ACTION_KEXEC: + log_struct(LOG_INFO, + LOG_MESSAGE("KExec action called."), + LOG_MESSAGE_ID(SD_MESSAGE_SHUTDOWN), + NULL); + break; + case ACTION_SUSPEND: + log_struct(LOG_INFO, + LOG_MESSAGE("Suspend action called."), + LOG_MESSAGE_ID(SD_MESSAGE_SLEEP_START), + NULL); + break; + case ACTION_HIBERNATE: + log_struct(LOG_INFO, + LOG_MESSAGE("Hibernate action called."), + LOG_MESSAGE_ID(SD_MESSAGE_SLEEP_START), + NULL); + case ACTION_HYBRID_SLEEP: + log_struct(LOG_INFO, + LOG_MESSAGE("Hybrid-Sleep action called."), + LOG_MESSAGE_ID(SD_MESSAGE_SLEEP_START), + NULL); + case ACTION_CANCEL_SHUTDOWN: + log_struct(LOG_INFO, + LOG_MESSAGE("Cancel Shutdown called."), + LOG_MESSAGE_ID(SD_MESSAGE_SHUTDOWN), + NULL); + break; + default: + break; + } +} + static int elogind_reboot(sd_bus *bus, enum elogind_action a) { _cleanup_(sd_bus_error_free) sd_bus_error error = SD_BUS_ERROR_NULL; const char *method = NULL; @@ -412,6 +466,8 @@ int start_special(int argc, char *argv[], void *userdata) { a = verb_to_action(argv[0]); + elogind_log_special(a); + /* Switch to cancel shutdown, if a shutdown action was requested, and the option to cancel it was set: */ if ( IN_SET(a, ACTION_POWEROFF, ACTION_REBOOT) -- 2.30.2