diff options
Diffstat (limited to 'container-core/src/main/java/com/yahoo/jdisc/http/server')
-rw-r--r-- | container-core/src/main/java/com/yahoo/jdisc/http/server/jetty/HttpRequestFactory.java | 1 | ||||
-rw-r--r-- | container-core/src/main/java/com/yahoo/jdisc/http/server/jetty/RequestUtils.java | 5 |
2 files changed, 6 insertions, 0 deletions
diff --git a/container-core/src/main/java/com/yahoo/jdisc/http/server/jetty/HttpRequestFactory.java b/container-core/src/main/java/com/yahoo/jdisc/http/server/jetty/HttpRequestFactory.java index 8edc2eb84d0..8a298fb3268 100644 --- a/container-core/src/main/java/com/yahoo/jdisc/http/server/jetty/HttpRequestFactory.java +++ b/container-core/src/main/java/com/yahoo/jdisc/http/server/jetty/HttpRequestFactory.java @@ -33,6 +33,7 @@ class HttpRequestFactory { new InetSocketAddress(servletRequest.getRemoteAddr(), servletRequest.getRemotePort()), getConnection((Request) servletRequest).getCreatedTimeStamp()); httpRequest.context().put(RequestUtils.JDISC_REQUEST_X509CERT, getCertChain(servletRequest)); + httpRequest.context().put(RequestUtils.JDICS_REQUEST_PORT, servletRequest.getLocalPort()); servletRequest.setAttribute(HttpRequest.class.getName(), httpRequest); return httpRequest; } catch (Utf8Appendable.NotUtf8Exception e) { diff --git a/container-core/src/main/java/com/yahoo/jdisc/http/server/jetty/RequestUtils.java b/container-core/src/main/java/com/yahoo/jdisc/http/server/jetty/RequestUtils.java index ae18c78a7d3..1bc862bc787 100644 --- a/container-core/src/main/java/com/yahoo/jdisc/http/server/jetty/RequestUtils.java +++ b/container-core/src/main/java/com/yahoo/jdisc/http/server/jetty/RequestUtils.java @@ -17,6 +17,11 @@ public class RequestUtils { public static final String JDISC_RESPONSE_CHAIN = "jdisc.response.chain"; public static final String SERVLET_REQUEST_X509CERT = "javax.servlet.request.X509Certificate"; + // The local port as reported by servlet spec. This will be influenced by Host header and similar mechanisms. + // The request URI uses the local listen port as the URI is used for handler routing/bindings. + // Use this attribute for generating URIs that is presented to client. + public static final String JDICS_REQUEST_PORT = "jdisc.request.port"; + private RequestUtils() {} public static Connection getConnection(Request request) { |