X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Fmachine%2Fmachined.c;h=3ce51da90d2e827f62c09ae2a5cfcc309140e4c3;hb=554604b3073467af75dc94fac9e2343148603289;hp=86f8de9195c2c2393cc19d26dc804ecea172c8b6;hpb=aba8b84e8d72224445b67646974b9dabc0972187;p=elogind.git diff --git a/src/machine/machined.c b/src/machine/machined.c index 86f8de919..3ce51da90 100644 --- a/src/machine/machined.c +++ b/src/machine/machined.c @@ -210,6 +210,18 @@ static int manager_connect_bus(Manager *m) { dbus_error_free(&error); } + dbus_bus_add_match(m->bus, + "type='signal'," + "sender='org.freedesktop.systemd1'," + "interface='org.freedesktop.systemd1.Manager'," + "member='UnitRemoved'," + "path='/org/freedesktop/systemd1'", + &error); + if (dbus_error_is_set(&error)) { + log_error("Failed to add match for UnitRemoved: %s", bus_error_message(&error)); + dbus_error_free(&error); + } + dbus_bus_add_match(m->bus, "type='signal'," "sender='org.freedesktop.systemd1'," @@ -221,6 +233,18 @@ static int manager_connect_bus(Manager *m) { dbus_error_free(&error); } + dbus_bus_add_match(m->bus, + "type='signal'," + "sender='org.freedesktop.systemd1'," + "interface='org.freedesktop.systemd1.Manager'," + "member='Reloading'," + "path='/org/freedesktop/systemd1'", + &error); + if (dbus_error_is_set(&error)) { + log_error("Failed to add match for Reloading: %s", bus_error_message(&error)); + dbus_error_free(&error); + } + r = bus_method_call_with_reply( m->bus, "org.freedesktop.systemd1", @@ -306,7 +330,7 @@ int manager_startup(Manager *m) { /* And start everything */ HASHMAP_FOREACH(machine, m->machines, i) - machine_start(machine); + machine_start(machine, NULL); return 0; }