summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRoshan Pius <rpius@google.com>2016-03-03 16:45:50 -0800
committerRoshan Pius <rpius@google.com>2016-03-06 20:28:24 -0800
commitef3ea1092bc17673c0a85a845b053151b7c10e07 (patch)
treed371c1d93680e019d6c4abb789bc57143745b958
parent9153bd67d51b305ffdd61355e0748e3c332c2caf (diff)
PNO: Bugfixes in WifiNative
Fix coupke of bugs in the |setPnoListNative| API found in manual testing of startPnoScan/stopPnoScan testing. BUG: 27167559 Change-Id: I1e2f8167fbee6db2401fdc918cd46f7d9d594bff TEST: Compiles & unit-test passes & manual testing of Scanner API
-rw-r--r--service/java/com/android/server/wifi/WifiNative.java8
-rw-r--r--service/java/com/android/server/wifi/WifiScanningServiceImpl.java3
-rw-r--r--service/java/com/android/server/wifi/WifiStateMachine.java2
-rw-r--r--service/jni/com_android_server_wifi_WifiNative.cpp12
4 files changed, 12 insertions, 13 deletions
diff --git a/service/java/com/android/server/wifi/WifiNative.java b/service/java/com/android/server/wifi/WifiNative.java
index 9c37f5c7c..d57f5d67a 100644
--- a/service/java/com/android/server/wifi/WifiNative.java
+++ b/service/java/com/android/server/wifi/WifiNative.java
@@ -1788,7 +1788,7 @@ public class WifiNative {
public int networkId;
public int priority;
public byte flags;
- public byte auth;
+ public byte auth_bit_field;
public String configKey; // kept for reference
/**
@@ -1812,12 +1812,12 @@ public class WifiNative {
ssid = config.SSID;
}
if (config.allowedKeyManagement.get(WifiConfiguration.KeyMgmt.WPA_PSK)) {
- auth |= WifiScanner.PnoSettings.PnoNetwork.AUTH_CODE_PSK;
+ auth_bit_field |= WifiScanner.PnoSettings.PnoNetwork.AUTH_CODE_PSK;
} else if (config.allowedKeyManagement.get(WifiConfiguration.KeyMgmt.WPA_EAP)
|| config.allowedKeyManagement.get(WifiConfiguration.KeyMgmt.IEEE8021X)) {
- auth |= WifiScanner.PnoSettings.PnoNetwork.AUTH_CODE_EAPOL;
+ auth_bit_field |= WifiScanner.PnoSettings.PnoNetwork.AUTH_CODE_EAPOL;
} else {
- auth |= WifiScanner.PnoSettings.PnoNetwork.AUTH_CODE_OPEN;
+ auth_bit_field |= WifiScanner.PnoSettings.PnoNetwork.AUTH_CODE_OPEN;
}
flags = WifiScanner.PnoSettings.PnoNetwork.FLAG_A_BAND;
flags |= WifiScanner.PnoSettings.PnoNetwork.FLAG_G_BAND;
diff --git a/service/java/com/android/server/wifi/WifiScanningServiceImpl.java b/service/java/com/android/server/wifi/WifiScanningServiceImpl.java
index 6b1c92633..6263a9af3 100644
--- a/service/java/com/android/server/wifi/WifiScanningServiceImpl.java
+++ b/service/java/com/android/server/wifi/WifiScanningServiceImpl.java
@@ -1034,7 +1034,8 @@ public class WifiScanningServiceImpl extends IWifiScanner.Stub {
nativePnoSetting.networkList[i].networkId = pnoSettings.networkList[i].networkId;
nativePnoSetting.networkList[i].priority = pnoSettings.networkList[i].priority;
nativePnoSetting.networkList[i].flags = pnoSettings.networkList[i].flags;
- nativePnoSetting.networkList[i].auth = pnoSettings.networkList[i].authBitField;
+ nativePnoSetting.networkList[i].auth_bit_field =
+ pnoSettings.networkList[i].authBitField;
}
return nativePnoSetting;
}
diff --git a/service/java/com/android/server/wifi/WifiStateMachine.java b/service/java/com/android/server/wifi/WifiStateMachine.java
index 6656dff77..77cdc687e 100644
--- a/service/java/com/android/server/wifi/WifiStateMachine.java
+++ b/service/java/com/android/server/wifi/WifiStateMachine.java
@@ -3489,7 +3489,7 @@ public class WifiStateMachine extends StateMachine implements WifiNative.PnoEven
if (true) {
StringBuilder sb = new StringBuilder();
for (WifiNative.PnoNetwork network : list) {
- sb.append("[").append(network.ssid).append(" auth=").append(network.auth);
+ sb.append("[").append(network.ssid).append(" auth=").append(network.auth_bit_field);
sb.append(" flags=");
sb.append(network.flags);
sb.append("] ");
diff --git a/service/jni/com_android_server_wifi_WifiNative.cpp b/service/jni/com_android_server_wifi_WifiNative.cpp
index c4f94df64..4394e7a9c 100644
--- a/service/jni/com_android_server_wifi_WifiNative.cpp
+++ b/service/jni/com_android_server_wifi_WifiNative.cpp
@@ -1905,7 +1905,7 @@ static jboolean android_net_wifi_setPnoListNative(
}
JNIObject<jobjectArray> list = helper.getArrayField(settings, "networkList",
- "[Lcom/android/server/wifi/WifiNative$PnoNetwork");
+ "[Lcom/android/server/wifi/WifiNative$PnoNetwork;");
if (list == NULL) {
return false;
}
@@ -1956,12 +1956,10 @@ static jboolean android_net_wifi_setPnoListNative(
}
memcpy(params.networks[i].ssid, ssid, ssid_len);
- int a = helper.getIntField(pno_net, "auth");
- params.networks[i].auth_bit_field = a;
- int f = helper.getIntField(pno_net, "flags");
- params.networks[i].flags = f;
- ALOGD(" setPnoListNative: idx %u auth %x/%x flags %x/%x [%s]", i,
- params.networks[i].auth_bit_field, a, params.networks[i].flags, f,
+ params.networks[i].auth_bit_field = helper.getByteField(pno_net, "auth_bit_field");
+ params.networks[i].flags = helper.getByteField(pno_net, "flags");
+ ALOGD(" setPnoListNative: idx %u auth %x flags %x [%s]", i,
+ params.networks[i].auth_bit_field, params.networks[i].flags,
params.networks[i].ssid);
}
params.min5GHz_rssi = helper.getIntField(settings, "min5GHzRssi");