Modify the pid and gid of bt-service to network_fw
[platform/core/connectivity/bluetooth-frwk.git] / bt-service / bt-service-event-receiver.c
index 153c6ad..a7944a5 100644 (file)
@@ -2347,6 +2347,21 @@ void _bt_handle_device_event(GVariant *msg, const char *member, const char *path
                        param);
 
                g_free(address);
+       }  else if (strcasecmp(member, "OtcDisconnected") == 0) {
+               gboolean connected = FALSE;
+               GVariant *otc_param = NULL;
+
+               address = g_malloc0(BT_ADDRESS_STRING_SIZE);
+               _bt_convert_device_path_to_address(path, address);
+
+               BT_DBG("OTC Disconnected, address: %s", address);
+               otc_param = g_variant_new("(ibsn)", result, connected, address);
+
+               /* Send event to application */
+               _bt_send_event(BT_OTP_EVENT,
+                                               BLUETOOTH_EVENT_OTC_STATE_CHANGED,
+                                               otc_param);
+               g_free(address);
        }
 }
 
@@ -3166,7 +3181,7 @@ int _bt_opp_client_event_init(void)
        GError *error = NULL;
 
        if (opc_obexd_conn == NULL) {
-               opc_obexd_conn = g_bus_get_sync(G_BUS_TYPE_SESSION, NULL, &error);
+               opc_obexd_conn = g_bus_get_sync(G_BUS_TYPE_SYSTEM, NULL, &error);
 
                if (!opc_obexd_conn) {
                        if (error) {
@@ -3228,7 +3243,7 @@ int _bt_map_client_event_init(void)
        GError *error = NULL;
 
        if (map_obexd_conn == NULL) {
-               map_obexd_conn = g_bus_get_sync(G_BUS_TYPE_SESSION, NULL, &error);
+               map_obexd_conn = g_bus_get_sync(G_BUS_TYPE_SYSTEM, NULL, &error);
 
                if (!map_obexd_conn) {
                        if (error) {
@@ -3879,7 +3894,7 @@ static int __bt_init_obexd_receiver(void)
                GError *error = NULL;
 
                if (obexd_conn == NULL) {
-                       obexd_conn = g_bus_get_sync(G_BUS_TYPE_SESSION, NULL, &error);
+                       obexd_conn = g_bus_get_sync(G_BUS_TYPE_SYSTEM, NULL, &error);
                        if (error != NULL) {
                                BT_ERR("ERROR: Can't get on session bus [%s]", error->message);
                                g_clear_error(&error);