X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Frfkill%2Frfkill.c;h=68729b0c04e5bf08aa220ffaa7f08273fb1a0a41;hb=64918838d566058b7cec72d13f4524de0a64a8e3;hp=986605e50b183da334f70af4de42ed9b9d448f97;hpb=e6a5e5be830032641fa2b99be64913aca72e965a;p=elogind.git diff --git a/src/rfkill/rfkill.c b/src/rfkill/rfkill.c index 986605e50..68729b0c0 100644 --- a/src/rfkill/rfkill.c +++ b/src/rfkill/rfkill.c @@ -24,7 +24,6 @@ #include "fileio.h" #include "libudev.h" #include "udev-util.h" -#include "util.h" int main(int argc, char *argv[]) { _cleanup_udev_unref_ struct udev *udev = NULL; @@ -46,7 +45,7 @@ int main(int argc, char *argv[]) { r = mkdir_p("/var/lib/systemd/rfkill", 0755); if (r < 0) { - log_error("Failed to create rfkill directory: %s", strerror(-r)); + log_error_errno(r, "Failed to create rfkill directory: %m"); return EXIT_FAILURE; } @@ -60,7 +59,7 @@ int main(int argc, char *argv[]) { device = udev_device_new_from_subsystem_sysname(udev, "rfkill", argv[2]); if (!device) { if (errno != 0) - log_error("Failed to get rfkill device '%s': %m", argv[2]); + log_error_errno(errno, "Failed to get rfkill device '%s': %m", argv[2]); else log_oom(); @@ -96,22 +95,25 @@ int main(int argc, char *argv[]) { return EXIT_FAILURE; } - if (streq(argv[1], "load") && restore_state()) { + if (streq(argv[1], "load")) { _cleanup_free_ char *value = NULL; + if (!shall_restore_state()) + return EXIT_SUCCESS; + r = read_one_line_file(saved, &value); if (r < 0) { if (r == -ENOENT) return EXIT_SUCCESS; - log_error("Failed to read %s: %s", saved, strerror(-r)); + log_error_errno(r, "Failed to read %s: %m", saved); return EXIT_FAILURE; } r = udev_device_set_sysattr_value(device, "soft", value); if (r < 0) { - log_error("Failed to write system attribute: %s", strerror(-r)); + log_error_errno(r, "Failed to write system attribute: %m"); return EXIT_FAILURE; } @@ -120,13 +122,13 @@ int main(int argc, char *argv[]) { value = udev_device_get_sysattr_value(device, "soft"); if (!value) { - log_error("Failed to read system attribute: %s", strerror(-r)); + log_error_errno(r, "Failed to read system attribute: %m"); return EXIT_FAILURE; } r = write_string_file(saved, value); if (r < 0) { - log_error("Failed to write %s: %s", saved, strerror(-r)); + log_error_errno(r, "Failed to write %s: %m", saved); return EXIT_FAILURE; }