Límite de tamaño de buffer de HttpClient superado

Estoy usando mi cliente para obtener información sobre un determinado archivo almacenado en mi Swift Object Storage al que se puede acceder a través de REST Api. En Swift, el método HEAD y la URL que lleva a un objeto específico devuelven sus metadatos (hash, marca de tiempo, etc.) contenidos en los encabezados de la respuesta HTML (NO tiene CONTENIDO).

Mi código funciona perfectamente cuando el tamaño del archivo es <2GB. Obtengo HttpResponseMessage y puedo analizarlo para los datos requeridos, pero cuando pido un archivo> 2GB obtengo una excepción: "No puedo escribir más bytes en el búfer que el tamaño máximo de búfer configurado: 2147483647".

Entiendo que la propiedad HttpClient MaxResponseContentBufferSize no se puede establecer en un valor> 2GB, pero no quiero obtener su contenido. ¿Es esto algún error o hay alguna mejor manera de resolver esto?

public HttpResponseMessage FileCheckResponse(string objectName)
   {
        //create url which will be appended to HttpClient (m_client)
        string requestUrl = RequestUrlBuilder(m_containerName, objectName);
        //create request message with Head method
        HttpRequestMessage request = new HttpRequestMessage(HttpMethod.Head, requestUrl);
        //exception thrown here... 
        HttpResponseMessage response = m_client.SendAsync(request).Result;            

        return response;
    }

Al intentar realizar la misma acción con Dev HTTP Client (extensión de Chrome) no tengo ningún problema. Parece que el encabezado Content-Length lo hace inviable. Aquí está la salida del Dev HTTP Client:

Content-Length: 3900762112
Accept-Ranges: bytes
Last-Modified: Fri, 06 Sep 2013 16:24:30 GMT
Etag: da4392bdb5c90edf31c14d008570fb95
X-Timestamp: 1378484670.87557
Content-Type: application/octet-stream
Date: Tue, 10 Sep 2013 13:25:27 GMT
Connection: keep-alive

Me alegraré por cualquier idea! Gracias

Solución

Primero, gracias a Darrel Mirrel, quien resolvió el problema de todo el día en pocos segundos :) Solo necesitaba editar una línea en el código agregando HttpCompletitionOption donde se obtiene la respuesta:

HttpResponseMessage response = m_client.SendAsync(request, HttpCompletionOption.ResponseHeadersRead).Result;

La opción ResponseHeaderRead le dice al cliente que finalice la operación tan pronto como los encabezados se lean sin leer el contenido del mensaje.

Respuestas a la pregunta(1)

Su respuesta a la pregunta