class HTTP::Timeout::Global

def connect_ssl

def connect_ssl
  reset_timer
  begin
    @socket.connect_nonblock
  rescue IO::WaitReadable
    IO.select([@socket], nil, nil, @time_left)
    log_time
    retry
  rescue IO::WaitWritable
    IO.select(nil, [@socket], nil, @time_left)
    log_time
    retry
  end
end