Snap for 4770446 from 4bc53c67f4f97513db6fa5ead362132ed55a80bb to pi-release
Change-Id: I88dc00c8e5e27d0967ffa0c17f62f5cac0510ad8
diff --git a/tests/cts/net/src/android/net/cts/IpSecManagerTest.java b/tests/cts/net/src/android/net/cts/IpSecManagerTest.java
index 95d91a2..a18b2f0 100644
--- a/tests/cts/net/src/android/net/cts/IpSecManagerTest.java
+++ b/tests/cts/net/src/android/net/cts/IpSecManagerTest.java
@@ -353,7 +353,8 @@
private static void assertUidStatsDelta(
int expectedTxByteDelta,
int expectedTxPacketDelta,
- int expectedRxByteDelta,
+ int minRxByteDelta,
+ int maxRxByteDelta,
int expectedRxPacketDelta) {
long newUidTxBytes = TrafficStats.getUidTxBytes(Os.getuid());
long newUidRxBytes = TrafficStats.getUidRxBytes(Os.getuid());
@@ -361,7 +362,9 @@
long newUidRxPackets = TrafficStats.getUidRxPackets(Os.getuid());
assertEquals(expectedTxByteDelta, newUidTxBytes - uidTxBytes);
- assertEquals(expectedRxByteDelta, newUidRxBytes - uidRxBytes);
+ assertTrue(
+ newUidRxBytes - uidRxBytes >= minRxByteDelta
+ && newUidRxBytes - uidRxBytes <= maxRxByteDelta);
assertEquals(expectedTxPacketDelta, newUidTxPackets - uidTxPackets);
assertEquals(expectedRxPacketDelta, newUidRxPackets - uidRxPackets);
}
@@ -561,13 +564,13 @@
StatsChecker.waitForNumPackets(expectedPackets);
- if (udpEncapLen != 0) {
- StatsChecker.assertUidStatsDelta(
- expectedOuterBytes, expectedPackets, expectedOuterBytes, expectedPackets);
- } else {
- StatsChecker.assertUidStatsDelta(
- expectedOuterBytes, expectedPackets, expectedInnerBytes, expectedPackets);
- }
+ // eBPF only counts inner packets, whereas xt_qtaguid counts outer packets. Allow both
+ StatsChecker.assertUidStatsDelta(
+ expectedOuterBytes,
+ expectedPackets,
+ expectedInnerBytes,
+ expectedOuterBytes,
+ expectedPackets);
// Unreliable at low numbers due to potential interference from other processes.
if (sendCount >= 1000) {
@@ -607,7 +610,11 @@
StatsChecker.waitForNumPackets(expectedNumPkts);
StatsChecker.assertUidStatsDelta(
- expectedPacketSize, expectedNumPkts, expectedPacketSize, expectedNumPkts);
+ expectedPacketSize,
+ expectedNumPkts,
+ expectedPacketSize,
+ expectedPacketSize,
+ expectedNumPkts);
StatsChecker.assertIfaceStatsDelta(
expectedPacketSize, expectedNumPkts, expectedPacketSize, expectedNumPkts);
}