summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSangyoon Jang <s89.jang@samsung.com>2013-12-20 16:40:50 +0900
committerLubomir Rintel <lkundrak@v3.sk>2015-02-11 11:55:31 +0100
commit9e9394ec5b1f3b361027ff64b768212e5bdfc025 (patch)
treec4d3323d0b98d35a1828ed5febdb7152b3b005f9
parent2ba1c906f7cae828d90691a20caef9a59f2f5f92 (diff)
[daemon-fix] Send SIGUSR1 signal to systemd for reconnecting to
kdbus bus daemon when starting system bus on boot Change-Id: Iaf9e64eec65bdbad4b737969481d80acd447c63e
-rw-r--r--bus/main.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/bus/main.c b/bus/main.c
index e060baa8..ebd09457 100644
--- a/bus/main.c
+++ b/bus/main.c
@@ -643,6 +643,18 @@ main (int argc, char **argv)
_dbus_set_signal_handler (SIGHUP, signal_handler);
#endif /* DBUS_UNIX */
+#ifdef ENABLE_KDBUS_TRANSPORT
+ if (bus_context_get_systemd_activation(context) == TRUE)
+ {
+ if (strncmp(bus_context_get_address(context), "kdbus:", strlen("kdbus:")) == 0 &&
+ !strcmp(bus_context_get_type(context), "system") &&
+ getuid() == 0)
+ {
+ kill (1, SIGUSR1);
+ }
+ }
+#endif
+
_dbus_verbose ("We are on D-Bus...\n");
_dbus_loop_run (bus_context_get_loop (context));