X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Fdbus.c;h=74b1c37ddaa3e6ad3acac3c93438e7ad2f2cc31b;hb=a3d4e06dfa234bf2a9398c8e534b705b68aa50a1;hp=a34c7dc17bdabecc45c8195cfb199991026bb7be;hpb=5e8d1c9a9f15b7453474dc4879bdb4021c3f50a1;p=elogind.git diff --git a/src/dbus.c b/src/dbus.c index a34c7dc17..74b1c37dd 100644 --- a/src/dbus.c +++ b/src/dbus.c @@ -761,7 +761,7 @@ static int bus_init_system(Manager *m) { if (m->system_bus) return 0; - if (m->running_as != MANAGER_SESSION && m->api_bus) + if (m->running_as == MANAGER_SYSTEM && m->api_bus) m->system_bus = m->api_bus; else { if (!(m->system_bus = dbus_bus_get_private(DBUS_BUS_SYSTEM, &error))) { @@ -819,7 +819,7 @@ static int bus_init_api(Manager *m) { if (m->api_bus) return 0; - if (m->running_as != MANAGER_SESSION && m->system_bus) + if (m->running_as == MANAGER_SYSTEM && m->system_bus) m->api_bus = m->system_bus; else { if (!(m->api_bus = dbus_bus_get_private(m->running_as == MANAGER_SESSION ? DBUS_BUS_SESSION : DBUS_BUS_SYSTEM, &error))) { @@ -914,7 +914,7 @@ static int bus_init_private(Manager *m) { return 0; /* We want the private bus only when running as init */ - if (m->running_as != MANAGER_INIT) + if (m->running_as != MANAGER_SYSTEM) return 0; if (!(m->private_bus = dbus_server_listen("unix:abstract=/org/freedesktop/systemd1/private", &error))) { @@ -1348,11 +1348,11 @@ int bus_broadcast(Manager *m, DBusMessage *message) { assert(message); SET_FOREACH(c, m->bus_connections_for_dispatch, i) - if (c != m->system_bus || m->running_as != MANAGER_SESSION) + if (c != m->system_bus || m->running_as == MANAGER_SYSTEM) oom = !dbus_connection_send(c, message, NULL); SET_FOREACH(c, m->bus_connections, i) - if (c != m->system_bus || m->running_as != MANAGER_SESSION) + if (c != m->system_bus || m->running_as == MANAGER_SYSTEM) oom = !dbus_connection_send(c, message, NULL); return oom ? -ENOMEM : 0;