1#ifndef TURNTCPSOCKET_HXX
2#define TURNTCPSOCKET_HXX
18 unsigned short port = 0);
24 virtual asio::error_code
connect(
const std::string& address,
unsigned short port);
31 virtual asio::error_code
rawWrite(
const char* buffer,
unsigned int size);
32 virtual asio::error_code
rawWrite(
const std::vector<asio::const_buffer>&
buffers);
33 virtual asio::error_code
rawRead(
unsigned int timeout,
unsigned int*
bytesRead, asio::ip::address* sourceAddress=0,
unsigned short*
sourcePort=0);
36 virtual void readBody(
unsigned int len);
45 asio::error_code
openAndBind(asio::ip::tcp::socket& socket);
60 asio::ip::tcp::socket mSocket;
static asio::ip::address UnspecifiedIpAddress
asio::error_code waitForConnectStep(asio::error_code &result, const std::function< void()> &cancel)
For a step of connect() started as an asynchronous operation that sets result (initially asio::error:...
virtual asio::error_code connect(const std::string &address, unsigned short port)
virtual asio::error_code rawRead(unsigned int timeout, unsigned int *bytesRead, asio::ip::address *sourceAddress=0, unsigned short *sourcePort=0)
virtual unsigned int getSocketDescriptor()
virtual asio::error_code rawWrite(const char *buffer, unsigned int size)
virtual void readHeader()
virtual void readBody(unsigned int len)
virtual void handleReadHeader(const asio::error_code &e)
Handle completion of a read operation for first 32 bits.
unsigned int mConnectTimeout
asio::ip::tcp protocol() const
The protocol (IPv4 or IPv6) of the local binding.
virtual void cancelSocket()
void setConnectTimeout(unsigned int milliseconds)
Milliseconds the TCP connect to each address connect() tries may take - and, for TLS,...
asio::error_code openAndBind(asio::ip::tcp::socket &socket)
Opens socket and binds it to the local binding (address and port), for a connection attempt.