#include <relack.hpp>
Definition at line 28 of file relack.hpp.
◆ id_t
◆ ReliableAck()
openvpn::ReliableAck::ReliableAck |
( |
| ) |
|
|
explicitdefault |
◆ ack()
template<typename REL_SEND >
static size_t openvpn::ReliableAck::ack |
( |
REL_SEND & |
rel_send, |
|
|
Buffer & |
buf, |
|
|
const bool |
live |
|
) |
| |
|
inlinestatic |
◆ ack_skip()
static size_t openvpn::ReliableAck::ack_skip |
( |
Buffer & |
buf | ) |
|
|
inlinestatic |
◆ acks_ready()
bool openvpn::ReliableAck::acks_ready |
( |
| ) |
const |
|
inline |
Returns true if either outstanding acks are present or ACKs for resending are present.
Definition at line 166 of file relack.hpp.
◆ add_ack_to_reack()
void openvpn::ReliableAck::add_ack_to_reack |
( |
id_t |
ack | ) |
|
|
inlineprivate |
◆ empty()
bool openvpn::ReliableAck::empty |
( |
| ) |
const |
|
inline |
Returns true if all outstanding ACKs are empty, otherwise false. Acks that can be resend are ignored.
- Returns
- Returns true if all ACKs are empty, otherwise false;
Definition at line 156 of file relack.hpp.
◆ front()
id_t openvpn::ReliableAck::front |
( |
| ) |
const |
|
inline |
◆ pop_front()
void openvpn::ReliableAck::pop_front |
( |
| ) |
|
|
inline |
◆ prepend()
void openvpn::ReliableAck::prepend |
( |
Buffer & |
buf, |
|
|
bool |
ackv1 |
|
) |
| |
|
inline |
handles the reACK logic and reACK/ACK list manipulation. pulls as many repeated ACKs as we can fit into the packet from the reACK queue, and pushes the fresh never-been-ACKed ids into the other end of the reACK queue. Enforces a limit on the size of the reACK queue and may discard reACKs sometimes.
Definition at line 93 of file relack.hpp.
◆ prepend_id()
static void openvpn::ReliableAck::prepend_id |
( |
Buffer & |
buf, |
|
|
const id_t |
id |
|
) |
| |
|
inlinestatic |
◆ push_back()
void openvpn::ReliableAck::push_back |
( |
id_t |
value | ) |
|
|
inline |
◆ read()
void openvpn::ReliableAck::read |
( |
Buffer & |
buf | ) |
|
|
inline |
◆ read_id()
static id_t openvpn::ReliableAck::read_id |
( |
Buffer & |
buf | ) |
|
|
inlinestatic |
◆ resend_size()
size_t openvpn::ReliableAck::resend_size |
( |
| ) |
|
|
inline |
◆ size()
size_t openvpn::ReliableAck::size |
( |
| ) |
const |
|
inline |
Returns the number of outstanding ACKs that have been sent.
Definition at line 144 of file relack.hpp.
◆ data
std::deque<id_t> openvpn::ReliableAck::data |
|
private |
◆ maximum_acks_ack_v1
constexpr size_t openvpn::ReliableAck::maximum_acks_ack_v1 = 8 |
|
staticconstexpr |
◆ maximum_acks_control_v1
constexpr size_t openvpn::ReliableAck::maximum_acks_control_v1 = 4 |
|
staticconstexpr |
◆ re_acks
std::deque<id_t> openvpn::ReliableAck::re_acks |
|
private |
The documentation for this class was generated from the following file: