code: public SslHandler newHandler(ByteBufAllocator alloc, Executor delegatedTaskExecutor) {
          return newHandler(alloc, startTls, delegatedTaskExecutor);
      }
docs: Creates a new {@link SslHandler}.
  <p>If {@link SslProvider#OPENSSL_REFCNT} is used then the returned {@link SslHandler} will release the engine
  that is wrapped. If the returned {@link SslHandler} is not inserted into a pipeline then you may leak native
  memory!
  <p><b>Beware</b>: the underlying generated {@link SSLEngine} won't have
  <a href="https://wiki.openssl.org/index.php/Hostname_validation">hostname verification</a> enabled by default.
  If you create {@link SslHandler} for the client side and want proper security, we advice that you configure
  the {@link SSLEngine} (see {@link javax.net.ssl.SSLParameters#setEndpointIdentificationAlgorithm(String)}):
  <pre>
  SSLEngine sslEngine = sslHandler.engine();
  SSLParameters sslParameters = sslEngine.getSSLParameters();
  // only available since Java 7
  sslParameters.setEndpointIdentificationAlgorithm("HTTPS");
  sslEngine.setSSLParameters(sslParameters);
  </pre>
  <p>
  The underlying {@link SSLEngine} may not follow the restrictions imposed by the
  <a href="https://docs.oracle.com/javase/7/docs/api/javax/net/ssl/SSLEngine.html">SSLEngine javadocs</a> which
  limits wrap/unwrap to operate on a single SSL/TLS packet.
  @param alloc If supported by the SSLEngine then the SSLEngine will use this to allocate ByteBuf objects.
  @param delegatedTaskExecutor the {@link Executor} that will be used to execute tasks that are returned by
  {@link SSLEngine#getDelegatedTask()}.
  @return a new {@link SslHandler}