diff options
author | Randy Pan <zpan@google.com> | 2016-03-23 10:17:29 -0700 |
---|---|---|
committer | Randy Pan <zpan@google.com> | 2016-03-23 16:14:26 -0700 |
commit | 37cc4a769e6a2b81f3b99941187cdfd95fc6f713 (patch) | |
tree | f8cdb386afe9f1ee68177e393fff8c99a8c8d76f /service | |
parent | baef64ddbe4660f95a51db4e1527d3ff3e0d9628 (diff) |
Fix ephemeral network Wifi configuration
Build ephemeral network Wifi Configuration's key managment
protocol properly from the scan results.
Bug: 27577494
Change-Id: Iec142a4cad64546f4a95c3ab270affd355469ff9
Diffstat (limited to 'service')
-rw-r--r-- | service/java/com/android/server/wifi/WifiConfigManager.java | 31 |
1 files changed, 17 insertions, 14 deletions
diff --git a/service/java/com/android/server/wifi/WifiConfigManager.java b/service/java/com/android/server/wifi/WifiConfigManager.java index b371bdd9a..e16604695 100644 --- a/service/java/com/android/server/wifi/WifiConfigManager.java +++ b/service/java/com/android/server/wifi/WifiConfigManager.java @@ -2955,23 +2955,26 @@ public class WifiConfigManager { loge("WifiConfiguration from scan results " + config.SSID + " cap " + result.capabilities); } - if (result.capabilities.contains("WEP")) { - config.allowedKeyManagement.set(KeyMgmt.NONE); - config.allowedAuthAlgorithms.set(WifiConfiguration.AuthAlgorithm.OPEN); //? - config.allowedAuthAlgorithms.set(WifiConfiguration.AuthAlgorithm.SHARED); - } - if (result.capabilities.contains("PSK")) { - config.allowedKeyManagement.set(KeyMgmt.WPA_PSK); - } + if (result.capabilities.contains("PSK") || result.capabilities.contains("EAP") + || result.capabilities.contains("WEP")) { + if (result.capabilities.contains("PSK")) { + config.allowedKeyManagement.set(KeyMgmt.WPA_PSK); + } - if (result.capabilities.contains("EAP")) { - //this is probably wrong, as we don't have a way to enter the enterprise config - config.allowedKeyManagement.set(KeyMgmt.WPA_EAP); - config.allowedKeyManagement.set(KeyMgmt.IEEE8021X); - } + if (result.capabilities.contains("EAP")) { + config.allowedKeyManagement.set(KeyMgmt.WPA_EAP); + config.allowedKeyManagement.set(KeyMgmt.IEEE8021X); + } - /* getScanDetailCache(config).put(scanDetail); */ + if (result.capabilities.contains("WEP")) { + config.allowedKeyManagement.set(KeyMgmt.NONE); + config.allowedAuthAlgorithms.set(WifiConfiguration.AuthAlgorithm.OPEN); + config.allowedAuthAlgorithms.set(WifiConfiguration.AuthAlgorithm.SHARED); + } + } else { + config.allowedKeyManagement.set(KeyMgmt.NONE); + } return config; } |