wifi-manager: Fix issue where callback of WPS connection without ssid was not called 45/128945/1 accepted/tizen/unified/20170512.165704 submit/tizen/20170512.071139 tizen_4.0.m1_release
authorSaurav Babu <saurav.babu@samsung.com>
Fri, 12 May 2017 06:33:11 +0000 (12:03 +0530)
committerSaurav Babu <saurav.babu@samsung.com>
Fri, 12 May 2017 06:36:19 +0000 (12:06 +0530)
Change-Id: Ie288e4a26f54db5063b4a8e8ea252f955d444344
Signed-off-by: Saurav Babu <saurav.babu@samsung.com>
include/network_internal.h
src/network_interface.c
src/network_signal.c

index fd6cdf6efdb1831f993b5b21f1e2bb2a892e4f2b..8c9ad17fb9e8b328317598238fa48922e8f3de01 100755 (executable)
@@ -117,6 +117,7 @@ typedef enum {
        NETWORK_REQUEST_TYPE_SET_DEFAULT,
        NETWORK_REQUEST_TYPE_RESET_DEFAULT,
        NETWORK_REQUEST_TYPE_TDLS_DISCOVERY,
+       NETWORK_REQUEST_TYPE_ENROLL_WPS_WITHOUT_SSID,
        NETWORK_REQUEST_TYPE_MAX
 } network_async_request_type_e;
 
index 4132e43153da36fb0a7422a3c27578accc149a9b..b9dad48af6eee0ed41533542ff58b04f339063d1 100755 (executable)
@@ -2023,7 +2023,7 @@ int net_wifi_enroll_wps_without_ssid(net_wifi_wps_info_s *wps_info)
                return NET_ERR_INVALID_OPERATION;
        }
 
-       request_table[NETWORK_REQUEST_TYPE_ENROLL_WPS].flag = TRUE;
+       request_table[NETWORK_REQUEST_TYPE_ENROLL_WPS_WITHOUT_SSID].flag = TRUE;
 
        if (wps_info->type == WIFI_WPS_PBC) {
                Error = _net_dbus_open_connection_without_ssid();
index bf094a375beff40c7a1328239acdf7ad206f71fe..8964ffb52ab328d2bd511c5dc25bda5e165cd07f 100755 (executable)
@@ -480,6 +480,15 @@ static int __net_handle_service_state_changed(const gchar *sig_path,
 
                                WIFI_LOG(WIFI_INFO, "Sending NET_EVENT_WIFI_WPS_RSP");
 
+                               _net_dbus_pending_call_unref();
+                       } else if (request_table[NETWORK_REQUEST_TYPE_ENROLL_WPS_WITHOUT_SSID].flag == TRUE) {
+                               memset(&request_table[NETWORK_REQUEST_TYPE_ENROLL_WPS_WITHOUT_SSID],
+                                               0, sizeof(network_request_table_s));
+
+                               event_data.Event = NET_EVENT_WIFI_WPS_RSP;
+
+                               WIFI_LOG(WIFI_INFO, "Sending NET_EVENT_WIFI_WPS_RSP");
+
                                _net_dbus_pending_call_unref();
                        } else {
                                event_data.Event = NET_EVENT_OPEN_IND;