chiark / gitweb /
sd-rtnl: improve detection of broadcast messages
[elogind.git] / src / hibernate-resume / hibernate-resume.c
index 8f68f81f9e95e21b3ebc8dbe7d96407c5dbfec0b..43aac616b6261dc1189d037ec9da6ca84a867ee2 100644 (file)
@@ -21,9 +21,7 @@
 
 #include <stdio.h>
 #include <errno.h>
-#include <sys/types.h>
 #include <sys/stat.h>
-#include <unistd.h>
 
 #include "log.h"
 #include "util.h"
@@ -46,10 +44,14 @@ int main(int argc, char *argv[]) {
 
         umask(0022);
 
+        /* Refuse to run unless we are in an initrd() */
+        if (!in_initrd())
+                return EXIT_SUCCESS;
+
         device = argv[1];
 
         if (stat(device, &st) < 0) {
-                log_error("Failed to stat '%s': %m", device);
+                log_error_errno(errno, "Failed to stat '%s': %m", device);
                 return EXIT_FAILURE;
         }
 
@@ -65,7 +67,7 @@ int main(int argc, char *argv[]) {
 
         r = write_string_file("/sys/power/resume", major_minor);
         if (r < 0) {
-                log_error("Failed to write '%s' to /sys/power/resume: %s", major_minor, strerror(-r));
+                log_error_errno(r, "Failed to write '%s' to /sys/power/resume: %m", major_minor);
                 return EXIT_FAILURE;
         }