summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--service/java/com/android/server/wifi/aware/WifiAwareDataPathStateManager.java28
-rw-r--r--tests/wifitests/src/com/android/server/wifi/aware/WifiAwareDataPathStateManagerTest.java7
2 files changed, 23 insertions, 12 deletions
diff --git a/service/java/com/android/server/wifi/aware/WifiAwareDataPathStateManager.java b/service/java/com/android/server/wifi/aware/WifiAwareDataPathStateManager.java
index fe17f4b15..44328930e 100644
--- a/service/java/com/android/server/wifi/aware/WifiAwareDataPathStateManager.java
+++ b/service/java/com/android/server/wifi/aware/WifiAwareDataPathStateManager.java
@@ -382,10 +382,11 @@ public class WifiAwareDataPathStateManager {
// potential transmission mechanism for port/transport-protocol information from
// Responder (alternative to confirm message)
- Pair<Integer, Integer> peerServerInfo = NetworkInformationData.parseTlv(message);
+ NetworkInformationData.ParsedResults peerServerInfo = NetworkInformationData.parseTlv(
+ message);
if (peerServerInfo != null) {
- nnriE.getValue().peerPort = peerServerInfo.first;
- nnriE.getValue().peerTransportProtocol = peerServerInfo.second;
+ nnriE.getValue().peerPort = peerServerInfo.port;
+ nnriE.getValue().peerTransportProtocol = peerServerInfo.transportProtocol;
}
return null; // ignore this for NDP set up flow: it is used to obtain app_info from Resp
@@ -572,10 +573,11 @@ public class WifiAwareDataPathStateManager {
// only relevant for the initiator
if (nnri.networkSpecifier.role
== WifiAwareManager.WIFI_AWARE_DATA_PATH_ROLE_INITIATOR) {
- Pair<Integer, Integer> peerServerInfo = NetworkInformationData.parseTlv(message);
+ NetworkInformationData.ParsedResults peerServerInfo =
+ NetworkInformationData.parseTlv(message);
if (peerServerInfo != null) {
- nnri.peerPort = peerServerInfo.first;
- nnri.peerTransportProtocol = peerServerInfo.second;
+ nnri.peerPort = peerServerInfo.port;
+ nnri.peerTransportProtocol = peerServerInfo.transportProtocol;
}
}
@@ -1479,10 +1481,20 @@ public class WifiAwareDataPathStateManager {
return tlvc.getArray();
}
+ static class ParsedResults {
+ ParsedResults(int port, int transportProtocol) {
+ this.port = port;
+ this.transportProtocol = transportProtocol;
+ }
+
+ public int port = 0;
+ public int transportProtocol = -1;
+ }
+
/**
* Parse the TLV and return <port, transportProtocol>.
*/
- public static Pair<Integer, Integer> parseTlv(byte[] tlvs) {
+ public static ParsedResults parseTlv(byte[] tlvs) {
int port = 0;
int transportProtocol = -1;
@@ -1517,7 +1529,7 @@ public class WifiAwareDataPathStateManager {
if (port == 0 && transportProtocol == -1) {
return null;
}
- return Pair.create(port, transportProtocol);
+ return new ParsedResults(port, transportProtocol);
}
private static Pair<Integer, Integer> parseServiceInfoTlv(byte[] tlv) {
diff --git a/tests/wifitests/src/com/android/server/wifi/aware/WifiAwareDataPathStateManagerTest.java b/tests/wifitests/src/com/android/server/wifi/aware/WifiAwareDataPathStateManagerTest.java
index c92363389..6b51db5b7 100644
--- a/tests/wifitests/src/com/android/server/wifi/aware/WifiAwareDataPathStateManagerTest.java
+++ b/tests/wifitests/src/com/android/server/wifi/aware/WifiAwareDataPathStateManagerTest.java
@@ -74,7 +74,6 @@ import android.os.Messenger;
import android.os.PowerManager;
import android.os.Process;
import android.os.test.TestLooper;
-import android.util.Pair;
import androidx.test.filters.SmallTest;
@@ -1082,10 +1081,10 @@ public class WifiAwareDataPathStateManagerTest {
new byte[]{0x01, 0x0d, 0x00, 0x50, 0x6f, (byte) 0x9a, 0x02, 0x00, 0x02, 0x00, 0x58,
0x1b, 0x01, 0x01, 0x00, 0x06};
- Pair<Integer, Integer> parsed =
+ WifiAwareDataPathStateManager.NetworkInformationData.ParsedResults parsed =
WifiAwareDataPathStateManager.NetworkInformationData.parseTlv(testVector);
- assertEquals(port, (int) parsed.first);
- assertEquals(transportProtocol, (int) parsed.second);
+ assertEquals(port, (int) parsed.port);
+ assertEquals(transportProtocol, (int) parsed.transportProtocol);
}
/*