class Excon::Socket
def read_block(max_length)
def read_block(max_length) @socket.read(max_length) rescue OpenSSL::SSL::SSLError => error if error.message == 'read would block' select_with_timeout(@socket, :read) && retry else raise(error) end rescue *READ_RETRY_EXCEPTION_CLASSES if @read_buffer.empty? select_with_timeout(@socket, :read) && retry end rescue EOFError @eof = true end