# File lib/puma/binder.rb, line 211
    def add_ssl_listener(host, port, ctx,
                         optimize_for_latency=true, backlog=1024)
      if IS_JRUBY
        @events.error "SSL not supported on JRuby"
        raise UnsupportedOption
      end

      require 'puma/minissl'

      s = TCPServer.new(host, port)
      if optimize_for_latency
        s.setsockopt(Socket::IPPROTO_TCP, Socket::TCP_NODELAY, 1)
      end
      s.setsockopt(Socket::SOL_SOCKET,Socket::SO_REUSEADDR, true)
      s.listen backlog

      ssl = MiniSSL::Server.new s, ctx
      env = @proto_env.dup
      env[HTTPS_KEY] = HTTPS
      @envs[ssl] = env

      @ios << ssl
      s
    end