X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Fsleep%2Fsleep.c;h=71c7518a3b4efaea819edb9e8b5c67bc811a5aa5;hb=877d54e9b09e093c2102f519a84e2a52637ae035;hp=7062dc242ff0bb1b2b7e6c56d28ffd6bab9b158c;hpb=6edd7d0a09171ea5ae8e01b7b1cbcb0bdfbfeb16;p=elogind.git diff --git a/src/sleep/sleep.c b/src/sleep/sleep.c index 7062dc242..71c7518a3 100644 --- a/src/sleep/sleep.c +++ b/src/sleep/sleep.c @@ -25,6 +25,8 @@ #include "log.h" #include "util.h" +#include "systemd/sd-id128.h" +#include "systemd/sd-messages.h" int main(int argc, char *argv[]) { const char *verb; @@ -63,7 +65,20 @@ int main(int argc, char *argv[]) { arguments[1] = (char*) "pre"; arguments[2] = argv[1]; arguments[3] = NULL; - execute_directory(SYSTEMD_SLEEP_BINARY_PATH, NULL, arguments); + execute_directory(SYSTEM_SLEEP_PATH, NULL, arguments); + + if (streq(argv[1], "suspend")) + log_struct(LOG_INFO, + "MESSAGE_ID=" SD_ID128_FORMAT_STR, SD_ID128_FORMAT_VAL(SD_MESSAGE_SLEEP_START), + "MESSAGE=Suspending system...", + "SLEEP=suspend", + NULL); + else + log_struct(LOG_INFO, + "MESSAGE_ID=" SD_ID128_FORMAT_STR, SD_ID128_FORMAT_VAL(SD_MESSAGE_SLEEP_START), + "MESSAGE=Hibernating system...", + "SLEEP=hibernate", + NULL); fputs(verb, f); fputc('\n', f); @@ -71,8 +86,21 @@ int main(int argc, char *argv[]) { r = ferror(f) ? -errno : 0; + if (streq(argv[1], "suspend")) + log_struct(LOG_INFO, + "MESSAGE_ID=" SD_ID128_FORMAT_STR, SD_ID128_FORMAT_VAL(SD_MESSAGE_SLEEP_STOP), + "MESSAGE=System resumed.", + "SLEEP=suspend", + NULL); + else + log_struct(LOG_INFO, + "MESSAGE_ID=" SD_ID128_FORMAT_STR, SD_ID128_FORMAT_VAL(SD_MESSAGE_SLEEP_STOP), + "MESSAGE=System thawed.", + "SLEEP=hibernate", + NULL); + arguments[1] = (char*) "post"; - execute_directory(SYSTEMD_SLEEP_BINARY_PATH, NULL, arguments); + execute_directory(SYSTEM_SLEEP_PATH, NULL, arguments); fclose(f);