X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=src%2Fcore%2Fdbus.c;h=580bdf3f71ca811c8ae0228d138d05822d2ff7ed;hp=cab7628ad0d2a335881c36fcdb1322611cf5431f;hb=6d99330e26977a9970e33fd83085c8c8c9de660f;hpb=0e7be1293fe70eed47b20f70f74a2a67fc87be17 diff --git a/src/core/dbus.c b/src/core/dbus.c index cab7628ad..580bdf3f7 100644 --- a/src/core/dbus.c +++ b/src/core/dbus.c @@ -801,7 +801,7 @@ static int bus_setup_api(Manager *m, sd_bus *bus) { * after the new connection is set up and the name installed * to allow clients to synchronously wait for reexecution to * finish */ - r = sd_bus_request_name(bus,"org.freedesktop.systemd1", SD_BUS_NAME_REPLACE_EXISTING|SD_BUS_NAME_DO_NOT_QUEUE); + r = sd_bus_request_name(bus,"org.freedesktop.systemd1", SD_BUS_NAME_REPLACE_EXISTING|SD_BUS_NAME_DO_NOT_QUEUE|SD_BUS_NAME_ALLOW_REPLACEMENT); if (r < 0) { log_error("Failed to register name: %s", strerror(-r)); return r; @@ -938,6 +938,10 @@ static int bus_init_private(Manager *m) { if (m->private_listen_fd >= 0) return 0; + /* We don't need the private socket if we have kdbus */ + if (m->kdbus_fd >= 0) + return 0; + if (m->running_as == SYSTEMD_SYSTEM) { /* We want the private bus only when running as init */