Github user sohami commented on a diff in the pull request:

    https://github.com/apache/drill/pull/950#discussion_r140133705
  
    --- Diff: exec/rpc/src/main/java/org/apache/drill/exec/rpc/BasicClient.java 
---
    @@ -100,6 +103,8 @@ protected void initChannel(SocketChannel ch) throws 
Exception {
                 ch.closeFuture().addListener(getCloseHandler(ch, connection));
     
                 final ChannelPipeline pipe = ch.pipeline();
    +            // Make sure that the SSL handler is the first handler in the 
pipeline so everything is encrypted
    +            setupSSL(pipe, sslHandshakeListener);
    --- End diff --
    
    this will be called all the time even when SSL is not enabled and then 
later we have a check inside setupSSL where we are doing all the setup inside 
that if condition. How about check that here instead and then calling setupSSL 
method based on that check ? That way we know setupSSL is to do some setup and 
will be called only when SSL is enabled.
    ```
    
    if (isSslEnabled()) {
       sslHandshakeListener = new 
ConnectionMultiListener.SSLHandshakeListener();
        setupSSL(pipe, sslHandshakeListener);
    }
    ```
    and then remove that check from inside the setupSSL method.


---

Reply via email to