27 enum switchAddressFlag
30 OVERRIDE_PRIMARY = SCTP_ADDR_OVER
37 SCTPSocket( uint16_t numOutStreams = 10, uint16_t maxInStreams = 65535, uint16_t maxAttempts = 4,
38 uint16_t maxInitTimeout = 0 );
44 explicit SCTPSocket(
Handle&& handle);
47 int bind(
const std::vector<std::string>& localAddresses,
unsigned short localPort = 0);
50 int connect(
const std::vector<std::string>& foreignAddresses,
unsigned short foreignPort = 0);
53 int notAckedData()
const;
54 int pendingData()
const;
55 unsigned inStreams()
const;
56 unsigned outStreams()
const;
57 unsigned fragmentationPoint()
const;
58 std::string primaryAddress()
const;
61 int send(
const void* data,
size_t length, uint16_t stream,
unsigned ttl = 0,
unsigned context = 0,
unsigned ppid = 0,
62 abortFlag abort = KEEPALIVE, switchAddressFlag switchAddr = KEEP_PRIMARY);
64 int sendUnordered(
const void* data,
size_t length, uint16_t stream,
unsigned ttl = 0,
unsigned context = 0,
65 unsigned ppid = 0, abortFlag abort = KEEPALIVE, switchAddressFlag switchAddr = KEEP_PRIMARY);
68 int receive(
void* data,
size_t maxLen, uint16_t& stream);
69 int receive(
void* data,
size_t maxLen, uint16_t& stream, receiveFlag& flag);
72 int timedReceive(
void* data,
size_t maxLen, uint16_t& stream,
int timeout);
73 int timedReceive(
void* data,
size_t maxLen, uint16_t& stream, receiveFlag& flag,
int timeout);
79 Handle timedAccept(
int timeout)
const;
82 void setInitValues( uint16_t ostr, uint16_t istr, uint16_t att, uint16_t time);
85 AddressFamily m_family;