OpenVPN 3 Core Library
Loading...
Searching...
No Matches
openvpn::Gremlin::SendRecvQueue Class Reference

#include <gremlin.hpp>

Collaboration diagram for openvpn::Gremlin::SendRecvQueue:
[legend]

Public Member Functions

 SendRecvQueue (openvpn_io::io_context &io_context, const Config::Ptr &conf_arg, const bool tcp_arg)
 
template<class F >
void send_queue (F &&func_arg)
 
template<class F >
void recv_queue (F &&func_arg)
 
size_t send_size () const
 
size_t recv_size () const
 
void stop ()
 

Private Member Functions

bool flip (const unsigned int prob)
 

Private Attributes

Config::Ptr conf
 
MTRand ri
 
DelayedQueue::Ptr send
 
DelayedQueue::Ptr recv
 
bool tcp
 

Detailed Description

Definition at line 151 of file gremlin.hpp.

Constructor & Destructor Documentation

◆ SendRecvQueue()

openvpn::Gremlin::SendRecvQueue::SendRecvQueue ( openvpn_io::io_context &  io_context,
const Config::Ptr conf_arg,
const bool  tcp_arg 
)
inline

Definition at line 154 of file gremlin.hpp.

Member Function Documentation

◆ flip()

bool openvpn::Gremlin::SendRecvQueue::flip ( const unsigned int  prob)
inlineprivate

Definition at line 195 of file gremlin.hpp.

Here is the caller graph for this function:

◆ recv_queue()

template<class F >
void openvpn::Gremlin::SendRecvQueue::recv_queue ( F &&  func_arg)
inline

Definition at line 172 of file gremlin.hpp.

◆ recv_size()

size_t openvpn::Gremlin::SendRecvQueue::recv_size ( ) const
inline

Definition at line 183 of file gremlin.hpp.

◆ send_queue()

template<class F >
void openvpn::Gremlin::SendRecvQueue::send_queue ( F &&  func_arg)
inline

Definition at line 165 of file gremlin.hpp.

◆ send_size()

size_t openvpn::Gremlin::SendRecvQueue::send_size ( ) const
inline

Definition at line 178 of file gremlin.hpp.

◆ stop()

void openvpn::Gremlin::SendRecvQueue::stop ( )
inline

Definition at line 188 of file gremlin.hpp.

Member Data Documentation

◆ conf

Config::Ptr openvpn::Gremlin::SendRecvQueue::conf
private

Definition at line 203 of file gremlin.hpp.

◆ recv

DelayedQueue::Ptr openvpn::Gremlin::SendRecvQueue::recv
private

Definition at line 206 of file gremlin.hpp.

◆ ri

MTRand openvpn::Gremlin::SendRecvQueue::ri
private

Definition at line 204 of file gremlin.hpp.

◆ send

DelayedQueue::Ptr openvpn::Gremlin::SendRecvQueue::send
private

Definition at line 205 of file gremlin.hpp.

◆ tcp

bool openvpn::Gremlin::SendRecvQueue::tcp
private

Definition at line 207 of file gremlin.hpp.


The documentation for this class was generated from the following file: