G_IO_HUP should be checked before G_IO_IN
[platform/core/connectivity/bluetooth-frwk.git] / bt-api / bt-event-handler.c
index aacef10..b5dcd89 100644 (file)
@@ -656,7 +656,7 @@ static void __bt_mesh_event_filter(GDBusConnection *connection,
 
                for (i = 0; i < total; i++)
                        g_free(info.sub_list[i]);
-               if (info.appkey_list) {
+               if (info.sub_list) {
                        g_free(info.sub_list);
                        g_variant_iter_free(iter);
                }
@@ -745,6 +745,23 @@ static void __bt_mesh_event_filter(GDBusConnection *connection,
                _bt_mesh_event_cb(BLUETOOTH_EVENT_MESH_MODEL_PUBLICATION_STATUS,
                                result, info,
                                event_info->cb, event_info->user_data);
+       } else if (strcasecmp(signal_name, BT_MESH_MODEL_MSG_EXECUTED) == 0) {
+               int result;
+               GVariant *param = NULL;
+               GArray *dbus_data = NULL;
+               bluetooth_mesh_model_msg_t *info = NULL;
+
+               g_variant_get(parameters, "(iv)", &result, &param);
+               dbus_data = g_array_new(TRUE, TRUE, sizeof(gchar));
+
+               __bt_fill_garray_from_variant(param, dbus_data);
+               g_variant_unref(param);
+
+               info = &g_array_index(dbus_data, bluetooth_mesh_model_msg_t, 0);
+
+               _bt_mesh_event_cb(BLUETOOTH_EVENT_MESH_MODEL_MSG_EXECUTED,
+                               result, info,
+                               event_info->cb, event_info->user_data);
        }
        BT_INFO("Mesh event handler Exit <<");
 }
@@ -1227,7 +1244,7 @@ void __bt_device_event_filter(GDBusConnection *connection,
 #endif
 
        ret_if(signal_name == NULL);
-#ifdef TIZEN_GATT_CLIENT
+
        if (strcasecmp(signal_name, BT_GATT_SERVER_CONNECTED) == 0) {
                const char *address = NULL;
                bluetooth_device_address_t dev_address = { {0} };
@@ -1268,28 +1285,6 @@ void __bt_device_event_filter(GDBusConnection *connection,
                _bt_common_event_cb(BLUETOOTH_EVENT_GATT_CLIENT_DISCONNECTED,
                                result, &dev_address,
                                event_info->cb, event_info->user_data);
-#else
-       if (strcasecmp(signal_name, BT_GATT_CONNECTED) == 0) {
-               const char *address = NULL;
-               bluetooth_device_address_t dev_address = { {0} };
-               BT_DBG("BT_GATT_CONNECTED");
-               g_variant_get(parameters, "(i&s)", &result, &address);
-
-               _bt_convert_addr_string_to_type(dev_address.addr, address);
-               _bt_common_event_cb(BLUETOOTH_EVENT_GATT_CONNECTED,
-                               result, &dev_address,
-                               event_info->cb, event_info->user_data);
-       } else if (strcasecmp(signal_name, BT_GATT_DISCONNECTED) == 0) {
-               const char *address = NULL;
-               bluetooth_device_address_t dev_address = { {0} };
-               BT_DBG("BT_GATT_DISCONNECTED");
-               g_variant_get(parameters, "(i&s)", &result, &address);
-
-               _bt_convert_addr_string_to_type(dev_address.addr, address);
-               _bt_common_event_cb(BLUETOOTH_EVENT_GATT_DISCONNECTED,
-                               result, &dev_address,
-                               event_info->cb, event_info->user_data);
-#endif
        } else if (strcasecmp(signal_name, BT_GATT_REQ_ATT_MTU_CHANGED) == 0) {
                const char *address = NULL;
                bluetooth_device_address_t dev_address = { {0} };
@@ -1738,7 +1733,6 @@ void __bt_headset_event_filter(GDBusConnection *connection,
                _bt_headset_event_cb(BLUETOOTH_EVENT_AG_MIC_GAIN,
                                result, &gain,
                                event_info->cb, event_info->user_data);
-#ifdef TIZEN_FEATURE_BT_AVC_TARGET
        } else if (strcasecmp(signal_name, BT_AUDIO_AVC_MODE_CHANGED) == 0) {
                bool mode;
 
@@ -1755,7 +1749,6 @@ void __bt_headset_event_filter(GDBusConnection *connection,
                                result, &volume,
                                event_info->cb, event_info->user_data);
        }
-#endif
 }
 
 void __bt_hid_device_event_filter(GDBusConnection *connection,
@@ -3920,7 +3913,6 @@ static void __bt_event_data_free(void *data)
        g_free(cb_data);
 }
 
-#ifdef TIZEN_GATT_CLIENT
 static void __bt_gatt_client_event_filter(GDBusConnection *connection,
                const gchar *sender_name,
                const gchar *object_path,
@@ -4212,9 +4204,6 @@ static void __bt_gatt_client_event_filter(GDBusConnection *connection,
        }
 }
 
-#endif
-
-
 #ifndef GATT_DIRECT
 static void __bt_gatt_server_event_filter(GDBusConnection *connection,
                const gchar *sender_name,
@@ -4231,31 +4220,8 @@ static void __bt_gatt_server_event_filter(GDBusConnection *connection,
 
        event_info = (bt_event_info_t *)user_data;
        ret_if(event_info == NULL);
-#ifdef TIZEN_GATT_CLIENT
-       if (strcasecmp(signal_name, BT_GATT_VALUE_CHANGED) == 0) {
-#else
-       if (strcasecmp(signal_name, BT_GATT_CONNECTED) == 0) {
-               const char *address = NULL;
-               bluetooth_device_address_t dev_address = { {0} };
-               BT_DBG("BT_GATT_CONNECTED");
-               g_variant_get(parameters, "(i&s)", &result, &address);
 
-               _bt_convert_addr_string_to_type(dev_address.addr, address);
-               _bt_gatt_server_event_cb(BLUETOOTH_EVENT_GATT_CONNECTED,
-                               result, &dev_address,
-                               event_info->cb, event_info->user_data);
-       } else if (strcasecmp(signal_name, BT_GATT_DISCONNECTED) == 0) {
-               const char *address = NULL;
-               bluetooth_device_address_t dev_address = { {0} };
-               BT_DBG("BT_GATT_DISCONNECTED");
-               g_variant_get(parameters, "(i&s)", &result, &address);
-
-               _bt_convert_addr_string_to_type(dev_address.addr, address);
-               _bt_gatt_server_event_cb(BLUETOOTH_EVENT_GATT_DISCONNECTED,
-                               result, &dev_address,
-                               event_info->cb, event_info->user_data);
-       } else if (strcasecmp(signal_name, BT_GATT_VALUE_CHANGED) == 0) {
-#endif
+       if (strcasecmp(signal_name, BT_GATT_VALUE_CHANGED) == 0) {
                const char *address = NULL;
                GVariant *data_var = NULL;
                bluetooth_device_address_t dev_address = { {0} };
@@ -4520,13 +4486,10 @@ int _bt_register_event(int event_type, void *event_cb, void *user_data)
                path = BT_GATT_SERVER_PATH;
                break;
 #endif
-
-#ifdef TIZEN_GATT_CLIENT
        case BT_GATT_CLIENT_EVENT:
                event_func = __bt_gatt_client_event_filter;
                path = BT_GATT_CLIENT_PATH;
                break;
-#endif
        case BT_MESH_EVENT:
                event_func = __bt_mesh_event_filter;
                path = BT_MESH_PATH;