--- a/test/jdk/java/net/SocketOption/TcpKeepAliveTest.java Thu Aug 15 15:39:43 2019 +0800
+++ b/test/jdk/java/net/SocketOption/TcpKeepAliveTest.java Thu Aug 15 12:58:27 2019 +0100
@@ -31,6 +31,7 @@
import java.io.IOException;
import java.net.DatagramSocket;
import java.net.InetAddress;
+import java.net.InetSocketAddress;
import java.net.MulticastSocket;
import java.net.ServerSocket;
import java.net.Socket;
@@ -43,9 +44,9 @@
private static final int DEFAULT_KEEP_ALIVE_INTVL = 53;
public static void main(String args[]) throws IOException {
-
- try (ServerSocket ss = new ServerSocket(0);
- Socket s = new Socket(InetAddress.getLoopbackAddress(), ss.getLocalPort());
+ var loopback = InetAddress.getLoopbackAddress();
+ try (ServerSocket ss = boundServer(loopback);
+ Socket s = new Socket(loopback, ss.getLocalPort());
DatagramSocket ds = new DatagramSocket(0);
MulticastSocket mc = new MulticastSocket(0)) {
if (ss.supportedOptions().contains(ExtendedSocketOptions.TCP_KEEPIDLE)) {
@@ -110,4 +111,11 @@
}
}
}
+
+ private static ServerSocket boundServer(InetAddress address) throws IOException {
+ var socketAddress = new InetSocketAddress(address, 0);
+ var server = new ServerSocket();
+ server.bind(socketAddress);
+ return server;
+ }
}