diff options
Diffstat (limited to 'plugins/wifi.c')
-rwxr-xr-x | plugins/wifi.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/plugins/wifi.c b/plugins/wifi.c index f8642ad0..632e138e 100755 --- a/plugins/wifi.c +++ b/plugins/wifi.c @@ -2674,11 +2674,14 @@ static void interface_state(GSupplicantInterface *interface) #if defined TIZEN_EXT int err; + int reason_code = 0; err = g_supplicant_interface_remove_network(wifi->interface); if (err < 0) DBG("Failed to remove network(%d)", err); + reason_code = g_supplicant_interface_get_disconnect_reason(wifi->interface); + /* Some of Wi-Fi networks are not comply Wi-Fi specification. * Retry association until its retry count is expired */ if (handle_wifi_assoc_retry(network, wifi) == true) { @@ -2687,6 +2690,11 @@ static void interface_state(GSupplicantInterface *interface) break; } + if(reason_code > 0){ + DBG("Set disconnect reason code(%d)", reason_code); + connman_network_set_disconnect_reason(network, reason_code); + } + /* To avoid unnecessary repeated association in wpa_supplicant, * "RemoveNetwork" should be made when Wi-Fi is disconnected */ if (wps != true && wifi->network && wifi->disconnecting == false) { |