X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=src%2Flogin%2Flogind-inhibit.c;h=a9e14af8dbf29148b1f510a765740f9d70f17a1b;hp=042586d0738c9268ae54bc8ce07a04c0b3465293;hb=7e63dd1015c9ac6fc2042e45b0a87a3f9f8b9336;hpb=ec202eae8e84a4c99f054f771cb832046cb8769f diff --git a/src/login/logind-inhibit.c b/src/login/logind-inhibit.c index 042586d07..a9e14af8d 100644 --- a/src/login/logind-inhibit.c +++ b/src/login/logind-inhibit.c @@ -98,12 +98,12 @@ int inhibitor_save(Inhibitor *i) { "# This is private data. Do not parse.\n" "WHAT=%s\n" "MODE=%s\n" - "UID=%lu\n" - "PID=%lu\n", + "UID="UID_FMT"\n" + "PID="PID_FMT"\n", inhibit_what_to_string(i->what), inhibit_mode_to_string(i->mode), - (unsigned long) i->uid, - (unsigned long) i->pid); + i->uid, + i->pid); if (i->who) { _cleanup_free_ char *cc = NULL; @@ -138,7 +138,7 @@ int inhibitor_save(Inhibitor *i) { finish: if (r < 0) - log_error("Failed to save inhibit data for %s: %s", i->id, strerror(-r)); + log_error("Failed to save inhibit data %s: %s", i->state_file, strerror(-r)); return r; } @@ -151,9 +151,9 @@ int inhibitor_start(Inhibitor *i) { dual_timestamp_get(&i->since); - log_debug("Inhibitor %s (%s) pid=%lu uid=%lu mode=%s started.", + log_debug("Inhibitor %s (%s) pid="PID_FMT" uid="UID_FMT" mode=%s started.", strna(i->who), strna(i->why), - (unsigned long) i->pid, (unsigned long) i->uid, + i->pid, i->uid, inhibit_mode_to_string(i->mode)); inhibitor_save(i); @@ -169,9 +169,9 @@ int inhibitor_stop(Inhibitor *i) { assert(i); if (i->started) - log_debug("Inhibitor %s (%s) pid=%lu uid=%lu mode=%s stopped.", + log_debug("Inhibitor %s (%s) pid="PID_FMT" uid="UID_FMT" mode=%s stopped.", strna(i->who), strna(i->why), - (unsigned long) i->pid, (unsigned long) i->uid, + i->pid, i->uid, inhibit_mode_to_string(i->mode)); if (i->state_file) @@ -253,8 +253,7 @@ int inhibitor_load(Inhibitor *i) { int fd; fd = inhibitor_create_fifo(i); - if (fd >= 0) - close_nointr_nofail(fd); + safe_close(fd); } return 0; @@ -300,7 +299,7 @@ int inhibitor_create_fifo(Inhibitor *i) { } if (!i->event_source) { - r = sd_event_add_io(i->manager->event, i->fifo_fd, 0, inhibitor_dispatch_fifo, i, &i->event_source); + r = sd_event_add_io(i->manager->event, &i->event_source, i->fifo_fd, 0, inhibitor_dispatch_fifo, i); if (r < 0) return r; @@ -320,13 +319,8 @@ int inhibitor_create_fifo(Inhibitor *i) { void inhibitor_remove_fifo(Inhibitor *i) { assert(i); - if (i->event_source) - i->event_source = sd_event_source_unref(i->event_source); - - if (i->fifo_fd >= 0) { - close_nointr_nofail(i->fifo_fd); - i->fifo_fd = -1; - } + i->event_source = sd_event_source_unref(i->event_source); + i->fifo_fd = safe_close(i->fifo_fd); if (i->fifo_path) { unlink(i->fifo_path); @@ -445,23 +439,23 @@ const char *inhibit_what_to_string(InhibitWhat w) { InhibitWhat inhibit_what_from_string(const char *s) { InhibitWhat what = 0; - char *w, *state; + const char *word, *state; size_t l; - FOREACH_WORD_SEPARATOR(w, l, s, ":", state) { - if (l == 8 && strneq(w, "shutdown", l)) + FOREACH_WORD_SEPARATOR(word, l, s, ":", state) { + if (l == 8 && strneq(word, "shutdown", l)) what |= INHIBIT_SHUTDOWN; - else if (l == 5 && strneq(w, "sleep", l)) + else if (l == 5 && strneq(word, "sleep", l)) what |= INHIBIT_SLEEP; - else if (l == 4 && strneq(w, "idle", l)) + else if (l == 4 && strneq(word, "idle", l)) what |= INHIBIT_IDLE; - else if (l == 16 && strneq(w, "handle-power-key", l)) + else if (l == 16 && strneq(word, "handle-power-key", l)) what |= INHIBIT_HANDLE_POWER_KEY; - else if (l == 18 && strneq(w, "handle-suspend-key", l)) + else if (l == 18 && strneq(word, "handle-suspend-key", l)) what |= INHIBIT_HANDLE_SUSPEND_KEY; - else if (l == 20 && strneq(w, "handle-hibernate-key", l)) + else if (l == 20 && strneq(word, "handle-hibernate-key", l)) what |= INHIBIT_HANDLE_HIBERNATE_KEY; - else if (l == 17 && strneq(w, "handle-lid-switch", l)) + else if (l == 17 && strneq(word, "handle-lid-switch", l)) what |= INHIBIT_HANDLE_LID_SWITCH; else return _INHIBIT_WHAT_INVALID;