MikaelSmith commented on code in PR #7884:
URL: https://github.com/apache/hadoop/pull/7884#discussion_r2286113936


##########
hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/web/SimpleHttpProxyHandler.java:
##########
@@ -95,6 +108,36 @@ public void exceptionCaught(ChannelHandlerContext ctx, 
Throwable cause) {
     }
   }
 
+  /**
+   * SSL redirect rewriter to adapt HTTP redirects to HTTPS. In the context
+   * SimpleHttpProxyHandler is used, 'host' is always an HTTP server; if it
+   * performs a redirect, it will redirect to an HTTP URL (HDFS-17680), which
+   * will fail if the external server is configured to use HTTPS.
+   *
+   * This handler rewrites the Location header of an HttpResponse to use HTTPS
+   * instead of HTTP, so that the client can follow the redirect.
+   */
+  private static final class SslRedirectRewriter extends 
ChannelInboundHandlerAdapter {
+    private SslRedirectRewriter() { }
+
+    @Override
+    public void channelRead(final ChannelHandlerContext ctx, Object message) {
+      if (!(message instanceof HttpResponse)) {

Review Comment:
   New test fails if this section is removed.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: common-issues-unsubscr...@hadoop.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: common-issues-unsubscr...@hadoop.apache.org
For additional commands, e-mail: common-issues-h...@hadoop.apache.org

Reply via email to