Change service type as notify 65/138165/4
authorSungguk Na <sungguk.na@samsung.com>
Tue, 11 Jul 2017 09:55:33 +0000 (18:55 +0900)
committerSungguk Na <sungguk.na@samsung.com>
Tue, 11 Jul 2017 11:34:51 +0000 (20:34 +0900)
Change-Id: I4b540f84ea8d8d27e7c707b4170eb80d79eae14c
Signed-off-by: Sungguk Na <sungguk.na@samsung.com>
CMakeLists.txt
packaging/peripheral-bus.service
src/daemon/peripheral_bus.c

index 0027411..311b233 100644 (file)
@@ -4,7 +4,7 @@ PROJECT(peripheral-bus C)
 SET(PREFIX ${CMAKE_INSTALL_PREFIX})
 SET(VERSION 0.0.1)
 
-SET(dependents "dlog glib-2.0 gio-2.0 gio-unix-2.0 iniparser libudev")
+SET(dependents "dlog glib-2.0 gio-2.0 gio-unix-2.0 libsystemd-daemon iniparser libudev")
 
 FIND_PROGRAM(GDBUS_CODEGEN NAMES gdbus-codegen)
 EXEC_PROGRAM(${GDBUS_CODEGEN} ARGS
index 9fbf27d..a06629a 100644 (file)
@@ -5,10 +5,11 @@ After=systemd-tmpfiles-setup.service
 
 [Service]
 SmackProcessLabel=System
-Type=simple
+Type=notify
 ExecStart=/usr/bin/peripheral-bus
 Restart=always
 RestartSec=0
 
 [Install]
 WantedBy=tizen-system.target
+
index e73d321..89574df 100644 (file)
@@ -18,6 +18,7 @@
 #include <stdlib.h>
 #include <string.h>
 #include <gio/gio.h>
+#include <systemd/sd-daemon.h>
 
 #include <peripheral_io.h>
 #include <peripheral_gdbus.h>
@@ -1673,6 +1674,14 @@ static void on_name_lost(GDBusConnection *conn,
        _E("Dbus name is lost!");
 }
 
+static gboolean peripheral_bus_notify(gpointer data)
+{
+       _D("sd_notify(READY=1)");
+       sd_notify(0, "READY=1");
+
+       return G_SOURCE_REMOVE;
+}
+
 int main(int argc, char *argv[])
 {
        GMainLoop *loop;
@@ -1709,6 +1718,8 @@ int main(int argc, char *argv[])
 
        loop = g_main_loop_new(NULL, FALSE);
 
+       g_idle_add(peripheral_bus_notify, NULL);
+
        _D("Enter main loop!");
        g_main_loop_run(loop);