LINUX.ORG.RU

История изменений

Исправление Lrrr, (текущая версия) :

while (boost::asio::read(socket, response, boost::asio::transfer_at_least(1), error));;

тут мне кажется можно сделать оптимальнее. Если не применяется chunked encoding, то можно прочитать сразу столько, сколько указано в Content-Length. Либо сразу вызывать MD5_Update в этом цикле.

Кстати MD5_{Init,Update,Final} помечены как устаревшие функции в openssl. Лучше заменить их на EVP_Digest{Init,Update,Final}

По теме - ты смотрел, хэш чего считаешь? Там сразу все должно стать видно. Может там надо чистить буфер после получения хедеров функцией response.consume() и т.п.

если проблема с записью в файл в конце, то там, подозреваю, надо вручную очищать буфер.

Исходная версия Lrrr, :

while (boost::asio::read(socket, response, boost::asio::transfer_at_least(1), error));;

тут мне кажется можно сделать оптимальнее. Если не применяется chunked encoding, то можно прочитать сразу столько, сколько указано в Content-Length. Либо сразу вызывать MD5_Update в этом цикле.

Кстати MD5_{Init,Update,Final} помечены как устаревшие функции в openssl. Лучше заменить их на EVP_Digest{Init,Update,Final}

По теме - ты смотрел, хэш чего считаешь? Там сразу все должно стать видно. Может там надо чистить буфер после получения хедеров функцией response.consume() и т.п.