Avoid calling ParcelFileDescriptor.fromSocket on new Sockets.
Previously, we were calling ParcelFileDescriptor.fromSocket on a newly initialized Socket, which doesn't actually create a file descriptor until the Socket is bound or connected. Bind the Socket to a random port to force the file descriptor to be allocated. Test: treehugger Change-Id: Id92a3e1316881d1c5382485aa2d6a41fc37e9651
This commit is contained in:
@@ -525,7 +525,10 @@ public class IpSecServiceParameterizedTest {
|
||||
|
||||
IpSecTransformResponse createTransformResp =
|
||||
mIpSecService.createTransform(ipSecConfig, new Binder(), "blessedPackage");
|
||||
ParcelFileDescriptor pfd = ParcelFileDescriptor.fromSocket(new Socket());
|
||||
|
||||
Socket socket = new Socket();
|
||||
socket.bind(null);
|
||||
ParcelFileDescriptor pfd = ParcelFileDescriptor.fromSocket(socket);
|
||||
|
||||
int resourceId = createTransformResp.resourceId;
|
||||
mIpSecService.applyTransportModeTransform(pfd, IpSecManager.DIRECTION_OUT, resourceId);
|
||||
@@ -542,7 +545,9 @@ public class IpSecServiceParameterizedTest {
|
||||
|
||||
@Test
|
||||
public void testRemoveTransportModeTransform() throws Exception {
|
||||
ParcelFileDescriptor pfd = ParcelFileDescriptor.fromSocket(new Socket());
|
||||
Socket socket = new Socket();
|
||||
socket.bind(null);
|
||||
ParcelFileDescriptor pfd = ParcelFileDescriptor.fromSocket(socket);
|
||||
mIpSecService.removeTransportModeTransforms(pfd);
|
||||
|
||||
verify(mMockNetd).ipSecRemoveTransportModeTransform(pfd.getFileDescriptor());
|
||||
|
||||
@@ -422,7 +422,9 @@ public class IpSecServiceTest {
|
||||
|
||||
@Test
|
||||
public void testRemoveTransportModeTransform() throws Exception {
|
||||
ParcelFileDescriptor pfd = ParcelFileDescriptor.fromSocket(new Socket());
|
||||
Socket socket = new Socket();
|
||||
socket.bind(null);
|
||||
ParcelFileDescriptor pfd = ParcelFileDescriptor.fromSocket(socket);
|
||||
mIpSecService.removeTransportModeTransforms(pfd);
|
||||
|
||||
verify(mMockNetd).ipSecRemoveTransportModeTransform(pfd.getFileDescriptor());
|
||||
|
||||
Reference in New Issue
Block a user