#include <cstring>
#include "communicator.h"
+#include "protocol_impl.h"
#include "streamsocket.h"
using namespace std;
protocol(p),
receiver(r),
handshake_status(0),
- buf_size(1024),
+ buf_size(65536),
in_buf(new char[buf_size]),
in_begin(in_buf),
in_end(in_buf),
handshake_status = 1;
}
-void Communicator::send_data(unsigned size)
+void Communicator::send_data(size_t size)
{
if(!good)
throw sequence_error("connection aborted");
while(more)
{
if(handshake_status==2)
- {
more = receive_packet(protocol, receiver);
- }
else
{
HandshakeProtocol hsproto;
{
if(in_end==in_buf+buf_size)
{
- unsigned used = in_end-in_begin;
+ size_t used = in_end-in_begin;
memmove(in_buf, in_begin, used);
in_begin = in_buf;
in_end = in_begin+used;
shake.hash = protocol.get_hash();
HandshakeProtocol hsproto;
- unsigned size = hsproto.serialize(shake, out_buf, buf_size);
+ size_t size = hsproto.serialize(shake, out_buf, buf_size);
socket.write(out_buf, size);
}