Merge "Force creation of Socket upon Transform application"

This commit is contained in:
Benedict Wong
2018-04-04 17:14:46 +00:00
committed by Gerrit Code Review

View File

@@ -37,6 +37,7 @@ import android.system.Os;
import com.android.server.IpSecService; import com.android.server.IpSecService;
import java.net.InetAddress; import java.net.InetAddress;
import java.net.Socket;
import java.net.UnknownHostException; import java.net.UnknownHostException;
import org.junit.Before; import org.junit.Before;
@@ -187,6 +188,33 @@ public class IpSecManagerTest {
verify(mMockIpSecService).closeUdpEncapsulationSocket(DUMMY_RESOURCE_ID); verify(mMockIpSecService).closeUdpEncapsulationSocket(DUMMY_RESOURCE_ID);
} }
@Test
public void testApplyTransportModeTransformEnsuresSocketCreation() throws Exception {
Socket socket = new Socket();
IpSecConfig dummyConfig = new IpSecConfig();
IpSecTransform dummyTransform = new IpSecTransform(null, dummyConfig);
// Even if underlying SocketImpl is not initalized, this should force the init, and
// thereby succeed.
mIpSecManager.applyTransportModeTransform(
socket, IpSecManager.DIRECTION_IN, dummyTransform);
// Check to make sure the FileDescriptor is non-null
assertNotNull(socket.getFileDescriptor$());
}
@Test
public void testRemoveTransportModeTransformsForcesSocketCreation() throws Exception {
Socket socket = new Socket();
// Even if underlying SocketImpl is not initalized, this should force the init, and
// thereby succeed.
mIpSecManager.removeTransportModeTransforms(socket);
// Check to make sure the FileDescriptor is non-null
assertNotNull(socket.getFileDescriptor$());
}
@Test @Test
public void testOpenEncapsulationSocketOnRandomPort() throws Exception { public void testOpenEncapsulationSocketOnRandomPort() throws Exception {
IpSecUdpEncapResponse udpEncapResp = IpSecUdpEncapResponse udpEncapResp =