PHP CURL - como saber se o arquivo inteiro solicitado não foi totalmente baixado

Estou usando o CURL e um proxy para obter alguns arquivos xml, ocasionalmente apenas parte do documento XML aparece e falha quando tento carregar / usar o xml (simplexml_load_string).

Eu pensei algo como ..

    if(curl_errno($ch))
    {
        $error = curl_error($ch);
        // handle error
    }

iria pegar esse erro sorta via CURL errno ..

CURLE_PARTIAL_FILE (18)

A transferência de arquivos foi menor ou maior que o esperado. Isso acontece quando o servidor primeiro relata um tamanho de transferência esperado e, em seguida, entrega dados que não correspondem ao tamanho especificado anteriormente.

No entanto, isso não funciona, acho que pode ser devido ao uso de um proxy. Mais alguma coisa que eu possa verificar? Meu único pensamento agora é fazer um preg_match para o último bit do documento XML, mas isso parece menos do que ideal, pois estou recebendo vários tipos de documentos XML e precisaria fazer verificações para cada tipo.

questionAnswers(2)

yourAnswerToTheQuestion