diff --git a/servlet/src/test/java/io/undertow/servlet/test/ProxyForwardedTestCase.java b/servlet/src/test/java/io/undertow/servlet/test/ProxyForwardedTestCase.java index c89de53479..399d8a0ad4 100644 --- a/servlet/src/test/java/io/undertow/servlet/test/ProxyForwardedTestCase.java +++ b/servlet/src/test/java/io/undertow/servlet/test/ProxyForwardedTestCase.java @@ -44,6 +44,7 @@ import jakarta.servlet.ServletException; import java.io.IOException; import java.net.InetSocketAddress; +import java.net.Socket; import java.util.Arrays; import java.util.HashMap; import java.util.Map; @@ -55,9 +56,11 @@ @RunWith(DefaultServer.class) @ProxyIgnore public class ProxyForwardedTestCase { + protected static int PORT; @BeforeClass public static void setup() throws ServletException { + PORT = DefaultServer.getHostPort("default"); final PathHandler root = new PathHandler(); final ServletContainer container = ServletContainer.Factory.newInstance(); @@ -95,12 +98,13 @@ public void testForwardedHandler() throws IOException { HttpEntity entity = result.getEntity(); String results = EntityUtils.toString(entity); Map map = convertWithStream(results); - InetSocketAddress serverAddress = DefaultServer.getDefaultServerAddress(); + Socket socket = new Socket(); + socket.connect(new InetSocketAddress(DefaultServer.getHostAddress(), PORT)); Assert.assertEquals(StatusCodes.OK, result.getStatusLine().getStatusCode()); - Assert.assertEquals(serverAddress.getAddress().getHostAddress(), map.get(GenericServletConstants.LOCAL_ADDR)); - Assert.assertEquals(serverAddress.getAddress().getHostName(), map.get(GenericServletConstants.LOCAL_NAME)); - Assert.assertEquals(serverAddress.getPort(), Integer.parseInt(map.get(GenericServletConstants.LOCAL_PORT))); + Assert.assertEquals(socket.getLocalAddress().getHostAddress(), map.get(GenericServletConstants.LOCAL_ADDR)); + Assert.assertEquals(socket.getLocalAddress().getHostName(), map.get(GenericServletConstants.LOCAL_NAME)); + Assert.assertEquals(PORT, Integer.parseInt(map.get(GenericServletConstants.LOCAL_PORT))); Assert.assertEquals("192.0.2.10", map.get(GenericServletConstants.SERVER_NAME)); Assert.assertEquals("8888", map.get(GenericServletConstants.SERVER_PORT)); Assert.assertEquals("192.0.2.43", map.get(GenericServletConstants.REMOTE_ADDR)); diff --git a/servlet/src/test/java/io/undertow/servlet/test/ProxyXForwardedTestCase.java b/servlet/src/test/java/io/undertow/servlet/test/ProxyXForwardedTestCase.java index 48066f8a45..b67367c8dc 100644 --- a/servlet/src/test/java/io/undertow/servlet/test/ProxyXForwardedTestCase.java +++ b/servlet/src/test/java/io/undertow/servlet/test/ProxyXForwardedTestCase.java @@ -44,6 +44,7 @@ import jakarta.servlet.ServletException; import java.io.IOException; import java.net.InetSocketAddress; +import java.net.Socket; import java.util.Arrays; import java.util.HashMap; import java.util.Map; @@ -55,9 +56,11 @@ @RunWith(DefaultServer.class) @ProxyIgnore public class ProxyXForwardedTestCase { + protected static int PORT; @BeforeClass public static void setup() throws ServletException { + PORT = DefaultServer.getHostPort("default"); final PathHandler root = new PathHandler(); final ServletContainer container = ServletContainer.Factory.newInstance(); @@ -93,12 +96,13 @@ public void testProxyPeerHandler() throws IOException, ServletException { HttpEntity entity = result.getEntity(); String results = EntityUtils.toString(entity); Map map = convertWithStream(results); - InetSocketAddress serverAddress = DefaultServer.getDefaultServerAddress(); + Socket socket = new Socket(); + socket.connect(new InetSocketAddress(DefaultServer.getHostAddress(), PORT)); Assert.assertEquals(StatusCodes.OK, result.getStatusLine().getStatusCode()); - Assert.assertEquals(serverAddress.getAddress().getHostAddress(), map.get(GenericServletConstants.LOCAL_ADDR)); - Assert.assertEquals(serverAddress.getAddress().getHostName(), map.get(GenericServletConstants.LOCAL_NAME)); - Assert.assertEquals(serverAddress.getPort(), Integer.parseInt(map.get(GenericServletConstants.LOCAL_PORT))); + Assert.assertEquals(socket.getLocalAddress().getHostAddress(), map.get(GenericServletConstants.LOCAL_ADDR)); + Assert.assertEquals(socket.getLocalAddress().getHostName(), map.get(GenericServletConstants.LOCAL_NAME)); + Assert.assertEquals(PORT, Integer.parseInt(map.get(GenericServletConstants.LOCAL_PORT))); Assert.assertEquals("192.0.2.10", map.get(GenericServletConstants.SERVER_NAME)); Assert.assertEquals("8888", map.get(GenericServletConstants.SERVER_PORT)); Assert.assertEquals("192.0.2.43", map.get(GenericServletConstants.REMOTE_ADDR));