diff options
author | Lennart Poettering <lennart@poettering.net> | 2013-12-03 18:01:26 +0100 |
---|---|---|
committer | Lennart Poettering <lennart@poettering.net> | 2013-12-03 18:02:46 +0100 |
commit | e7176abbe818c75c6acd90227a7a84c3e05fee31 (patch) | |
tree | f6aabfb7282b1a4e01b80025f4f05f14a727ffcf /src/login/logind.c | |
parent | 059d9fbb5a691ced7428cff5ff1da5681cacf6da (diff) |
bus: make sd_bus_request_name() and sd_bus_release_name() behave more like other calls
Instead of returning an enum of return codes, make them return error
codes like kdbus does internally.
Also, document this behaviour so that clients can stick to it.
(Also rework bus-control.c to always have to functions for dbus1 vs.
kernel implementation of the various calls.)
Diffstat (limited to 'src/login/logind.c')
-rw-r--r-- | src/login/logind.c | 7 |
1 files changed, 1 insertions, 6 deletions
diff --git a/src/login/logind.c b/src/login/logind.c index 47b306b619..87d46ee605 100644 --- a/src/login/logind.c +++ b/src/login/logind.c @@ -725,17 +725,12 @@ static int manager_connect_bus(Manager *m) { return r; } - r = sd_bus_request_name(m->bus, "org.freedesktop.login1", SD_BUS_NAME_DO_NOT_QUEUE); + r = sd_bus_request_name(m->bus, "org.freedesktop.login1", SD_BUS_NAME_REPLACE_EXISTING|SD_BUS_NAME_DO_NOT_QUEUE); if (r < 0) { log_error("Failed to register name: %s", strerror(-r)); return r; } - if (r != SD_BUS_NAME_PRIMARY_OWNER) { - log_error("Failed to acquire name."); - return -EEXIST; - } - r = sd_bus_attach_event(m->bus, m->event, 0); if (r < 0) { log_error("Failed to attach bus to event loop: %s", strerror(-r)); |