Boost logo

Boost :

From: Raffaele Romito (berserker_r_at_[hidden])
Date: 2007-12-05 03:02:31


 Hi, I'm using this simple class:class MySocket{public: bool read(void *data, size_t size) { boost::system::error_code error; size_t result = boost::asio::read(m_socket, boost::asio::buffer(data, size), boost::asio::transfer_all(), error); if(error) { onError(error); return false; } return result == size; } bool write(const void *data, size_t size) { boost::system::error_code error; size_t result = boost::asio::write(m_socket, boost::asio::buffer(data, size), boost::asio::transfer_all(), error); if(error) { onError(error); return false; } return result == size; }private: boost::asio::ssl::stream<boost::asio::ip::tcp::socket> m_socket;};The "handshake" part works with no problems but when I try to read or write data (in syncronous mode as you can see) it works onlyif the buffer is quite "small": when I call MySocket::write with 1mb for example it locks forever (it seems to locks in a call to WSARecv)Plz help...
_________________________________________________________________
Organizza le tue foto e condividile con i tuoi amici con Raccolta foto di Windows Live!
http://www.windowslive.it


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk