class Excon::Socket

def readline

def readline
  if @nonblock && RUBY_VERSION.to_f > 1.8_7
    buffer = String.new
    buffer << (read_nonblock(1) || raise(EOFError)) while buffer[-1] != "\n"
    buffer
  else # nonblock/legacy
    begin
      Timeout.timeout(@data[:read_timeout]) do
        @socket.readline
      end
    rescue Timeout::Error
      raise Excon::Errors::Timeout.new('read timeout reached')
    end
  end
end