]> 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)
committerLuca Boccassi <luca.boccassi@gmail.com>
Thu, 19 Dec 2024 09:55:03 +0000 (09:55 +0000)
This is an interesting event. Let's log about it.

(cherry picked from commit 11ee1bab60abde67cd0edc470c93c1afe10d975d)

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.");