]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
dbus: log disconnect on api and system busses
authorRonan Pigott <ronan@rjp.ie>
Thu, 28 Nov 2024 19:51:38 +0000 (12:51 -0700)
committerRonan Pigott <ronan@rjp.ie>
Wed, 11 Dec 2024 19:12:14 +0000 (12:12 -0700)
This is an interesting event. Let's log about it.

src/core/dbus.c

index 744b97f9910d4eab30e80b5e120698c9dc88c149..3f0f40e702b3c01ace35a17f30afde774c9f39a0 100644 (file)
@@ -131,10 +131,16 @@ static int signal_disconnected(sd_bus_message *message, void *userdata, sd_bus_e
         assert(message);
         assert_se(bus = sd_bus_message_get_bus(message));
 
-        if (bus == m->api_bus)
+        if (bus == m->api_bus) {
+                log_notice("Got disconnect on API bus.");
                 bus_done_api(m);
-        if (bus == m->system_bus)
+        }
+        if (bus == m->system_bus) {
+                /* If we are the system manager, this is already logged by the API bus. */
+                if (!MANAGER_IS_SYSTEM(m))
+                        log_notice("Got disconnect on system bus.");
                 bus_done_system(m);
+        }
 
         if (set_remove(m->private_buses, bus)) {
                 log_debug("Got disconnect on private connection.");