
I'm playing with the following SSL client example against an https site: http://www.boost.org/doc/libs/1_36_0/doc/html/boost_asio/example/ssl/client.... I replaced std::cout << "Enter message: " with the part of the URL corresponding to an HTTP GET request, and changed the handle_read() to void handle_read(const boost::system::error_code& error, size_t bytes_transferred) { if (!error) { std::cout << "Reply: "; std::cout.write(reply_, bytes_transferred); std::cout << "\n"; boost::asio::async_read(socket_, boost::asio::buffer(reply_, bytes_transferred), boost::bind(&client::handle_read, this, boost::asio::placeholders::error, boost::asio::placeholders::bytes_transferred)); } else { std::cout << "Read failed: " << error << "\n"; } } so that it goes back to read more data. I'm able to get more than 20k data in response, but unable to reach the end of the data stream as the browser can. What could be a good reason for this behavior? Thanks, Greg