Apparently boost::asio::async_read doesn\'t like strings, as the only overload of boost::asio::buffer allows me to create const_buffer
boost::asio::async_read
boost::asio::buffer
const_buffer
It's really buried in the docs...
Given boost::asio::streambuf b, with size_t buf_size ...
boost::asio::streambuf b
size_t buf_size
boost::asio::streambuf::const_buffers_type bufs = b.data(); std::string str(boost::asio::buffers_begin(bufs), boost::asio::buffers_begin(bufs) + buf_size);