OpenVPN 3 Core Library
Loading...
Searching...
No Matches
openvpn::UDPTransport::UDPLink< ReadHandler > Class Template Reference

#include <udplink.hpp>

Inheritance diagram for openvpn::UDPTransport::UDPLink< ReadHandler >:
[legend]
Collaboration diagram for openvpn::UDPTransport::UDPLink< ReadHandler >:
[legend]

Public Types

typedef RCPtr< UDPLinkPtr
 
- Public Types inherited from openvpn::RC< thread_unsafe_refcount >
typedef RCPtr< RCPtr
 

Public Member Functions

 UDPLink (ReadHandler read_handler_arg, openvpn_io::ip::udp::socket &socket_arg, const Frame::Context &frame_context_arg, const SessionStats::Ptr &stats_arg)
 
int send (const Buffer &buf, const AsioEndpoint *endpoint)
 
void start (const int n_parallel)
 
void stop ()
 
void reset_align_adjust (const size_t align_adjust)
 
 ~UDPLink ()
 
- Public Member Functions inherited from openvpn::RC< thread_unsafe_refcount >
 RC () noexcept=default
 
 RC (const RC &)=delete
 
virtual ~RC ()=default
 
RCoperator= (const RC &)=delete
 
olong use_count () const noexcept
 Delegates call to RCImpl and returns the result.
 

Private Member Functions

void queue_read (PacketFrom *udpfrom)
 
void handle_read (PacketFrom::SPtr pfp, const openvpn_io::error_code &error, const size_t bytes_recvd)
 
int do_send (const Buffer &buf, const AsioEndpoint *endpoint)
 

Private Attributes

openvpn_io::ip::udp::socket & socket
 
bool halt
 
ReadHandler read_handler
 
Frame::Context frame_context
 
SessionStats::Ptr stats
 

Additional Inherited Members

- Static Public Member Functions inherited from openvpn::RC< thread_unsafe_refcount >
static constexpr bool is_thread_safe ()
 Delegates call to RCImpl and returns the result.
 

Detailed Description

template<typename ReadHandler>
class openvpn::UDPTransport::UDPLink< ReadHandler >

Definition at line 60 of file udplink.hpp.

Member Typedef Documentation

◆ Ptr

template<typename ReadHandler >
typedef RCPtr<UDPLink> openvpn::UDPTransport::UDPLink< ReadHandler >::Ptr

Definition at line 63 of file udplink.hpp.

Constructor & Destructor Documentation

◆ UDPLink()

template<typename ReadHandler >
openvpn::UDPTransport::UDPLink< ReadHandler >::UDPLink ( ReadHandler  read_handler_arg,
openvpn_io::ip::udp::socket &  socket_arg,
const Frame::Context frame_context_arg,
const SessionStats::Ptr stats_arg 
)
inline

Definition at line 65 of file udplink.hpp.

◆ ~UDPLink()

template<typename ReadHandler >
openvpn::UDPTransport::UDPLink< ReadHandler >::~UDPLink ( )
inline

Definition at line 123 of file udplink.hpp.

Member Function Documentation

◆ do_send()

template<typename ReadHandler >
int openvpn::UDPTransport::UDPLink< ReadHandler >::do_send ( const Buffer buf,
const AsioEndpoint endpoint 
)
inlineprivate

Definition at line 175 of file udplink.hpp.

Here is the caller graph for this function:

◆ handle_read()

template<typename ReadHandler >
void openvpn::UDPTransport::UDPLink< ReadHandler >::handle_read ( PacketFrom::SPtr  pfp,
const openvpn_io::error_code &  error,
const size_t  bytes_recvd 
)
inlineprivate

Definition at line 144 of file udplink.hpp.

◆ queue_read()

template<typename ReadHandler >
void openvpn::UDPTransport::UDPLink< ReadHandler >::queue_read ( PacketFrom udpfrom)
inlineprivate

Definition at line 129 of file udplink.hpp.

Here is the caller graph for this function:

◆ reset_align_adjust()

template<typename ReadHandler >
void openvpn::UDPTransport::UDPLink< ReadHandler >::reset_align_adjust ( const size_t  align_adjust)
inline

Definition at line 118 of file udplink.hpp.

◆ send()

template<typename ReadHandler >
int openvpn::UDPTransport::UDPLink< ReadHandler >::send ( const Buffer buf,
const AsioEndpoint endpoint 
)
inline

Definition at line 87 of file udplink.hpp.

◆ start()

template<typename ReadHandler >
void openvpn::UDPTransport::UDPLink< ReadHandler >::start ( const int  n_parallel)
inline

Definition at line 100 of file udplink.hpp.

◆ stop()

template<typename ReadHandler >
void openvpn::UDPTransport::UDPLink< ReadHandler >::stop ( )
inline

Definition at line 109 of file udplink.hpp.

Here is the caller graph for this function:

Member Data Documentation

◆ frame_context

template<typename ReadHandler >
Frame::Context openvpn::UDPTransport::UDPLink< ReadHandler >::frame_context
private

Definition at line 230 of file udplink.hpp.

◆ halt

template<typename ReadHandler >
bool openvpn::UDPTransport::UDPLink< ReadHandler >::halt
private

Definition at line 228 of file udplink.hpp.

◆ read_handler

template<typename ReadHandler >
ReadHandler openvpn::UDPTransport::UDPLink< ReadHandler >::read_handler
private

Definition at line 229 of file udplink.hpp.

◆ socket

template<typename ReadHandler >
openvpn_io::ip::udp::socket& openvpn::UDPTransport::UDPLink< ReadHandler >::socket
private

Definition at line 227 of file udplink.hpp.

◆ stats

template<typename ReadHandler >
SessionStats::Ptr openvpn::UDPTransport::UDPLink< ReadHandler >::stats
private

Definition at line 231 of file udplink.hpp.


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