Merge "Add TunnelInterface API and KernelResourceRecords" am: 7a7d04e103 am: 7cacbb3c86

am: 54cd11245e

Change-Id: I955d5090171f08e4fa20eac5bdfe761132b87d35
This commit is contained in:
Benedict Wong
2018-01-24 09:54:06 +00:00
committed by android-build-merger
2 changed files with 23 additions and 2 deletions

View File

@@ -458,8 +458,8 @@ public class ConnectivityService extends IConnectivityManager.Stub
private LingerMonitor mLingerMonitor; private LingerMonitor mLingerMonitor;
// sequence number for Networks; keep in sync with system/netd/NetworkController.cpp // sequence number for Networks; keep in sync with system/netd/NetworkController.cpp
private final static int MIN_NET_ID = 100; // some reserved marks private static final int MIN_NET_ID = 100; // some reserved marks
private final static int MAX_NET_ID = 65535; private static final int MAX_NET_ID = 65535 - 0x0400; // Top 1024 bits reserved by IpSecService
private int mNextNetId = MIN_NET_ID; private int mNextNetId = MIN_NET_ID;
// sequence number of NetworkRequests // sequence number of NetworkRequests

View File

@@ -635,4 +635,25 @@ public class IpSecServiceTest {
verify(mMockNetd).ipSecSetEncapSocketOwner(argThat(fdMatcher), eq(Os.getuid())); verify(mMockNetd).ipSecSetEncapSocketOwner(argThat(fdMatcher), eq(Os.getuid()));
mIpSecService.closeUdpEncapsulationSocket(udpEncapResp.resourceId); mIpSecService.closeUdpEncapsulationSocket(udpEncapResp.resourceId);
} }
@Test
public void testReserveNetId() {
int start = mIpSecService.TUN_INTF_NETID_START;
for (int i = 0; i < mIpSecService.TUN_INTF_NETID_RANGE; i++) {
assertEquals(start + i, mIpSecService.reserveNetId());
}
// Check that resource exhaustion triggers an exception
try {
mIpSecService.reserveNetId();
fail("Did not throw error for all netIds reserved");
} catch (IllegalStateException expected) {
}
// Now release one and try again
int releasedNetId =
mIpSecService.TUN_INTF_NETID_START + mIpSecService.TUN_INTF_NETID_RANGE / 2;
mIpSecService.releaseNetId(releasedNetId);
assertEquals(releasedNetId, mIpSecService.reserveNetId());
}
} }