Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 203b7a7c authored by Benedict Wong's avatar Benedict Wong Committed by Gerrit Code Review
Browse files

Merge "Add tests for Tunnel, Transport mode application with released SPIs"

parents 3a28eabc 4d3f871a
Loading
Loading
Loading
Loading
+27 −0
Original line number Diff line number Diff line
@@ -547,6 +547,16 @@ public class IpSecServiceParameterizedTest {

    @Test
    public void testApplyTransportModeTransform() throws Exception {
        verifyApplyTransportModeTransformCommon(false);
    }

    @Test
    public void testApplyTransportModeTransformReleasedSpi() throws Exception {
        verifyApplyTransportModeTransformCommon(true);
    }

    public void verifyApplyTransportModeTransformCommon(
                boolean closeSpiBeforeApply) throws Exception {
        IpSecConfig ipSecConfig = new IpSecConfig();
        addDefaultSpisAndRemoteAddrToIpSecConfig(ipSecConfig);
        addAuthAndCryptToIpSecConfig(ipSecConfig);
@@ -554,6 +564,10 @@ public class IpSecServiceParameterizedTest {
        IpSecTransformResponse createTransformResp =
                mIpSecService.createTransform(ipSecConfig, new Binder(), "blessedPackage");

        if (closeSpiBeforeApply) {
            mIpSecService.releaseSecurityParameterIndex(ipSecConfig.getSpiResourceId());
        }

        Socket socket = new Socket();
        socket.bind(null);
        ParcelFileDescriptor pfd = ParcelFileDescriptor.fromSocket(socket);
@@ -689,6 +703,15 @@ public class IpSecServiceParameterizedTest {

    @Test
    public void testApplyTunnelModeTransform() throws Exception {
        verifyApplyTunnelModeTransformCommon(false);
    }

    @Test
    public void testApplyTunnelModeTransformReleasedSpi() throws Exception {
        verifyApplyTunnelModeTransformCommon(true);
    }

    public void verifyApplyTunnelModeTransformCommon(boolean closeSpiBeforeApply) throws Exception {
        IpSecConfig ipSecConfig = new IpSecConfig();
        ipSecConfig.setMode(IpSecTransform.MODE_TUNNEL);
        addDefaultSpisAndRemoteAddrToIpSecConfig(ipSecConfig);
@@ -699,6 +722,10 @@ public class IpSecServiceParameterizedTest {
        IpSecTunnelInterfaceResponse createTunnelResp =
                createAndValidateTunnel(mSourceAddr, mDestinationAddr, "blessedPackage");

        if (closeSpiBeforeApply) {
            mIpSecService.releaseSecurityParameterIndex(ipSecConfig.getSpiResourceId());
        }

        int transformResourceId = createTransformResp.resourceId;
        int tunnelResourceId = createTunnelResp.resourceId;
        mIpSecService.applyTunnelModeTransform(tunnelResourceId, IpSecManager.DIRECTION_OUT,