Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- fun createWifiConfiguration(savedNetwork: WifiConfiguration, preSharedKey: String) : WifiConfiguration {
- val auth = savedNetwork.allowedAuthAlgorithms
- val keyManagement = savedNetwork.allowedKeyManagement
- val pairwiseCipher = savedNetwork.allowedPairwiseCiphers
- val config = WifiConfiguration()
- config.SSID = "\"" + savedNetwork.SSID + "\""
- config.BSSID = savedNetwork.BSSID
- if (auth.get(WifiConfiguration.Protocol.WPA) || auth.get(WifiConfiguration.Protocol.RSN)) {
- config.allowedProtocols.set(WifiConfiguration.Protocol.WPA)
- config.allowedProtocols.set(WifiConfiguration.Protocol.RSN)
- }
- if (auth.get(WifiConfiguration.AuthAlgorithm.LEAP))
- config.allowedAuthAlgorithms.set(WifiConfiguration.AuthAlgorithm.LEAP)
- else if (auth.get(WifiConfiguration.Protocol.WPA) || auth.get(WifiConfiguration.Protocol.RSN))
- config.allowedAuthAlgorithms.set(WifiConfiguration.AuthAlgorithm.OPEN)
- else if (auth.get(WifiConfiguration.AuthAlgorithm.SHARED))
- config.allowedAuthAlgorithms.set(WifiConfiguration.AuthAlgorithm.SHARED)
- if (keyManagement.get(WifiConfiguration.KeyMgmt.IEEE8021X))
- config.allowedKeyManagement.set(WifiConfiguration.KeyMgmt.IEEE8021X)
- else if (auth.get(WifiConfiguration.Protocol.WPA) && keyManagement.get(WifiConfiguration.KeyMgmt.WPA_EAP))
- config.allowedKeyManagement.set(WifiConfiguration.KeyMgmt.WPA_EAP)
- else if (auth.get(WifiConfiguration.Protocol.WPA) && keyManagement.get(WifiConfiguration.KeyMgmt.WPA_PSK))
- config.allowedKeyManagement.set(WifiConfiguration.KeyMgmt.WPA_PSK)
- else if (auth.get(WifiConfiguration.Protocol.RSN) && keyManagement.get(WifiConfiguration.KeyMgmt.WPA_PSK))
- config.allowedKeyManagement.set(WifiConfiguration.KeyMgmt.WPA_PSK)
- if (pairwiseCipher.get(WifiConfiguration.PairwiseCipher.CCMP) || pairwiseCipher.get(WifiConfiguration.PairwiseCipher.TKIP)) {
- config.allowedPairwiseCiphers.set(WifiConfiguration.PairwiseCipher.CCMP)
- config.allowedPairwiseCiphers.set(WifiConfiguration.PairwiseCipher.TKIP)
- }
- if (preSharedKey.isNotEmpty()) {
- if (auth.get(WifiConfiguration.AuthAlgorithm.SHARED)) {
- if (preSharedKey.matches("\\p{XDigit}+".toRegex())) {
- config.wepKeys[0] = preSharedKey
- } else {
- config.wepKeys[0] = "\"" + preSharedKey + "\""
- }
- config.wepTxKeyIndex = 0
- } else {
- config.preSharedKey = "\"" + preSharedKey + "\""
- }
- }
- return config
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement