Fix bug of invitation behavior
authorKim Gibyoung <lastkgb.kim@samsung.com>
Sat, 2 Feb 2013 17:47:24 +0000 (02:47 +0900)
committerKim Gibyoung <lastkgb.kim@samsung.com>
Sat, 2 Feb 2013 19:17:49 +0000 (04:17 +0900)
Change-Id: I22c19f2871b0fa51997d4b70828877e0ff4d5154

debian/changelog
oem/wifi-direct-oem.c
packaging/wifi-direct-manager.spec
plugin/wpasupplicant/src/wifi-direct-plugin.c
src/wifi-direct-event-handler.c

index 296552b..a766acc 100644 (file)
@@ -1,10 +1,18 @@
+wfi-direct-manager (0.6.4) precise; urgency=low
+
+  * Fix bug of invitation behavior
+  * Git : framework/connectivity/wifi-direct-manager
+  * Tag : wifi-direct-manager_0.6.4
+
+ -- Gibyoung Kim <lastkgb.kim@samsung.com>  Sun, 3 Feb 2013 02:45:22 +0900
+
 wfi-direct-manager (0.6.3) precise; urgency=low
 
   * SMACK is corrected
   * Git : framework/connectivity/wifi-direct-manager
   * Tag : wifi-direct-manager_0.6.3
 
- -- Gibyoung Kim <lastkgb.kim@samsung.com>  Fri, 2 Feb 2013 19:38:15 +0900
+ -- Gibyoung Kim <lastkgb.kim@samsung.com>  Sat, 2 Feb 2013 19:38:15 +0900
 
 wfi-direct-manager (0.6.2) precise; urgency=low
 
index 0951827..7d02bd5 100644 (file)
@@ -22,6 +22,7 @@
 
 #include "wifi-direct-oem.h"
 #include "wifi-direct-utils.h"
+#include "wifi-direct-service.h"
 
 unsigned char g_incomming_peer_mac_address[6];
 char g_incomming_peer_ssid[32 + 1];
index d8d4d81..44fcf9d 100755 (executable)
@@ -1,6 +1,6 @@
 Name:       wifi-direct-manager
 Summary:    Wi-Fi Direct manger
-Version:    0.6.3
+Version:    0.6.4
 Release:    1
 Group:      TO_BE_FILLED
 License:    Apache License Version 2.0
index f6cfeab..d4377d6 100644 (file)
@@ -2248,11 +2248,16 @@ int wfd_ws_wps_pbc_start(unsigned char peer_addr[6])
        char tmp_mac[6] = {0,};
 
        if (peer_addr == NULL) {
-               if (memcmp(g_incomming_peer_mac_address, tmp_mac, 6) == 0)
+               WDP_LOGD("Peer address is NULL");
+               if (memcmp(g_incomming_peer_mac_address, tmp_mac, 6) == 0) {
+                       WDP_LOGD("Incomming peer [" MACSTR "]", MAC2STR(g_incomming_peer_mac_address));
                        snprintf(cmd, sizeof(cmd), "%s", CMD_WPS_PUSHBUTTON_START);
-               else
+               } else {
+                       WDP_LOGD("Incomming peer [" MACSTR "]", MAC2STR(g_incomming_peer_mac_address));
                        snprintf(cmd, sizeof(cmd), "%s p2p_dev_addr=" MACSTR "", CMD_WPS_PUSHBUTTON_START, MAC2STR(g_incomming_peer_mac_address));
+               }
        } else if (memcmp(peer_addr, tmp_mac, 6) != 0){
+               WDP_LOGD("Peer address [" MACSTR "]", MAC2STR(peer_addr));
                snprintf(cmd, sizeof(cmd), "%s p2p_dev_addr=" MACSTR "", CMD_WPS_PUSHBUTTON_START, MAC2STR(peer_addr));
        } else {
                WDP_LOGE("Peer address is incorrent");
@@ -2338,10 +2343,12 @@ int wfd_ws_connect(unsigned char mac_addr[6], wifi_direct_wps_type_e wps_config)
        {
                snprintf(mac_str, 18, MACSTR, MAC2STR(mac_addr));
                if (wps_config == WIFI_DIRECT_WPS_TYPE_PIN_KEYPAD || 
-                       wps_config == WIFI_DIRECT_WPS_TYPE_PIN_DISPLAY)
+                       wps_config == WIFI_DIRECT_WPS_TYPE_PIN_DISPLAY) {
                        snprintf(cmd, sizeof(cmd),"%s %s %s join", CMD_CONNECT, mac_str, g_wps_pin);
-               else
+               }else {
                        snprintf(cmd, sizeof(cmd),"%s %s %s join", CMD_CONNECT, mac_str, __convert_wps_config_methods_value(wps_config));
+               }
+               WDP_LOGD("Join command: [%s]", cmd);
                result = __send_wpa_request(g_control_sockfd, cmd, (char*)res_buffer, res_buffer_len);
                WDP_LOGD( "__send_wpa_request(CMD_CONNECT join) result=[%d]\n", result);
        }
@@ -3031,6 +3038,7 @@ int wfd_ws_send_provision_discovery_request(unsigned char mac_addr[6], wifi_dire
                snprintf(mac_str, 18, MACSTR, MAC2STR(mac_addr));
                snprintf(cmd, sizeof(cmd),"%s %s %s join", CMD_CONNECT, mac_str, __convert_wps_config_methods_value(config_method));
                result = __send_wpa_request(g_control_sockfd, cmd, (char*)res_buffer, res_buffer_len);
+               WDP_LOGD("Join command: [%s]", cmd);
                WDP_LOGD( "__send_wpa_request(P2P_PROV_DISC) result=[%d]\n", result);
        }
        else
index 648dbfa..727b4f4 100644 (file)
@@ -798,6 +798,19 @@ void wfd_server_process_event(wfd_event_t event)
                        __wfd_server_send_client_event(&noti);\r
                        break;\r
 \r
+               case WFD_EVENT_PROV_DISCOVERY_REQUEST_WPS_DISPLAY:\r
+               case WFD_EVENT_PROV_DISCOVERY_REQUEST_WPS_KEYPAD:\r
+                       if (event == WFD_EVENT_PROV_DISCOVERY_REQUEST_WPS_DISPLAY) {\r
+                               wfd_server->config_data.wps_config = WIFI_DIRECT_WPS_TYPE_PIN_DISPLAY;\r
+                               wfd_oem_wps_pin_start(g_incomming_peer_mac_address);\r
+                       } else if (event == WFD_EVENT_PROV_DISCOVERY_REQUEST_WPS_KEYPAD) {\r
+                               wfd_server->config_data.wps_config = WIFI_DIRECT_WPS_TYPE_PIN_KEYPAD;\r
+                       }\r
+                       noti.event = WIFI_DIRECT_CLI_EVENT_CONNECTION_WPS_REQ;\r
+                       WDS_LOGI("g_incomming_peer_mac_address is [" MACSTR "]\n", MAC2STR(g_incomming_peer_mac_address));\r
+                       snprintf(noti.param1, sizeof(noti.param1), MACSTR, MAC2STR(g_incomming_peer_mac_address));\r
+                       __wfd_server_send_client_event(&noti);\r
+               break;\r
                default:\r
                        WDS_LOGI(\r
                                                   "Unprocessed event: state=[%s] event= [%s] \n",\r
@@ -847,7 +860,6 @@ void wfd_server_process_event(wfd_event_t event)
        {\r
                switch (event)\r
                {\r
-               case WFD_EVENT_INVITE_REQUEST:\r
                case WFD_EVENT_PROV_DISCOVERY_REQUEST:\r
                case WFD_EVENT_PROV_DISCOVERY_REQUEST_WPS_DISPLAY:\r
                case WFD_EVENT_PROV_DISCOVERY_REQUEST_WPS_KEYPAD:\r
@@ -858,23 +870,23 @@ void wfd_server_process_event(wfd_event_t event)
                                        wfd_server->config_data.wps_config = WIFI_DIRECT_WPS_TYPE_PIN_DISPLAY;\r
                                else if (event == WFD_EVENT_PROV_DISCOVERY_REQUEST_WPS_KEYPAD)\r
                                        wfd_server->config_data.wps_config = WIFI_DIRECT_WPS_TYPE_PIN_KEYPAD;\r
-                               else\r
-                               {\r
-                                       //wfd_server->config_data.wps_config = WIFI_DIRECT_WPS_TYPE_NONE;\r
-                                       WDS_LOGD( "WFD_EVENT_INVITE_REQUEST\n");\r
-                               }\r
 \r
                                noti.event = WIFI_DIRECT_CLI_EVENT_CONNECTION_REQ;\r
-\r
-                               WDS_LOGI(\r
-                                                          "g_incomming_peer_mac_address is " MACSTR "\n",\r
+                               WDS_LOGI("g_incomming_peer_mac_address is " MACSTR "\n",\r
                                                           MAC2STR(g_incomming_peer_mac_address));\r
-                               //WDS_LOGI( "g_incomming_peer_ssid is [%s]\n", g_incomming_peer_ssid);\r
                                snprintf(noti.param1, sizeof(noti.param1), MACSTR,\r
                                                 MAC2STR(g_incomming_peer_mac_address));\r
 \r
-                               //strncpy(noti.param2, g_incomming_peer_ssid, strlen(g_incomming_peer_ssid));\r
+                               __wfd_server_send_client_event(&noti);\r
+                       }\r
+                       break;\r
 \r
+               case WFD_EVENT_INVITE_REQUEST:\r
+                       {\r
+                               noti.event = WIFI_DIRECT_CLI_EVENT_INVITATION_REQ;\r
+                               WDS_LOGD("WIFI_DIRECT_CLI_EVENT_INVITATION_REQ");\r
+                               snprintf(noti.param1, sizeof(noti.param1), MACSTR,\r
+                                                MAC2STR(g_incomming_peer_mac_address));\r
                                __wfd_server_send_client_event(&noti);\r
                        }\r
                        break;\r