diff options
author | Irfan Sheriff <isheriff@google.com> | 2012-11-03 23:21:39 -0700 |
---|---|---|
committer | Irfan Sheriff <isheriff@google.com> | 2012-11-06 15:55:30 -0800 |
commit | 745e7fd4e09db2b47371338ee54c54255e286473 (patch) | |
tree | 4b77c211236cbc49ca0789b01c752484ed9e80fc /wifi | |
parent | 62fcb21577ccdd68dddd6b6984ad0ce58ee0c228 (diff) | |
download | hardware_libhardware_legacy-745e7fd4e09db2b47371338ee54c54255e286473.zip hardware_libhardware_legacy-745e7fd4e09db2b47371338ee54c54255e286473.tar.gz hardware_libhardware_legacy-745e7fd4e09db2b47371338ee54c54255e286473.tar.bz2 |
Fix stop supplicant api
Bug: 7227463
Change-Id: I4576e223c69dd67bd714fefecf0a1047770362fd
Diffstat (limited to 'wifi')
-rw-r--r-- | wifi/wifi.c | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/wifi/wifi.c b/wifi/wifi.c index d62b30f..b905897 100644 --- a/wifi/wifi.c +++ b/wifi/wifi.c @@ -604,11 +604,19 @@ int wifi_start_supplicant(int p2p_supported) return -1; } -int wifi_stop_supplicant() +int wifi_stop_supplicant(int p2p_supported) { char supp_status[PROPERTY_VALUE_MAX] = {'\0'}; int count = 50; /* wait at most 5 seconds for completion */ + if (p2p_supported) { + strcpy(supplicant_name, P2P_SUPPLICANT_NAME); + strcpy(supplicant_prop_name, P2P_PROP_NAME); + } else { + strcpy(supplicant_name, SUPPLICANT_NAME); + strcpy(supplicant_prop_name, SUPP_PROP_NAME); + } + /* Check whether supplicant already stopped */ if (property_get(supplicant_prop_name, supp_status, NULL) && strcmp(supp_status, "stopped") == 0) { @@ -625,6 +633,7 @@ int wifi_stop_supplicant() } usleep(100000); } + ALOGE("Failed to stop supplicant"); return -1; } |