OpenVPN 3 Core Library
Loading...
Searching...
No Matches
openvpn::TunBuilderClient::ClientConfig Class Reference

#include <client.hpp>

Inheritance diagram for openvpn::TunBuilderClient::ClientConfig:
[legend]
Collaboration diagram for openvpn::TunBuilderClient::ClientConfig:
[legend]

Public Types

typedef RCPtr< ClientConfigPtr
 
- Public Types inherited from openvpn::TunClientFactory
typedef RCPtr< TunClientFactoryPtr
 
- Public Types inherited from openvpn::RC< thread_unsafe_refcount >
typedef RCPtr< RCPtr
 

Public Member Functions

TunClient::Ptr new_tun_client_obj (openvpn_io::io_context &io_context, TunClientParent &parent, TransportClient *transcli) override
 
void finalize (const bool disconnected) override
 
bool supports_epoch_data () override
 
- Public Member Functions inherited from openvpn::TunClientFactory
virtual bool layer_2_supported () const
 
- 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.
 

Static Public Member Functions

static Ptr new_obj ()
 
- 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.
 

Public Attributes

TunProp::Config tun_prop
 
int n_parallel
 
bool retain_sd
 
bool tun_prefix
 
Frame::Ptr frame
 
SessionStats::Ptr stats
 
EmulateExcludeRouteFactory::Ptr eer_factory
 
TunPersist::Ptr tun_persist
 
TunBuilderBasebuilder
 

Private Member Functions

 ClientConfig ()
 

Detailed Description

Definition at line 72 of file client.hpp.

Member Typedef Documentation

◆ Ptr

Constructor & Destructor Documentation

◆ ClientConfig()

openvpn::TunBuilderClient::ClientConfig::ClientConfig ( )
inlineprivate

Definition at line 108 of file client.hpp.

Here is the caller graph for this function:

Member Function Documentation

◆ finalize()

void openvpn::TunBuilderClient::ClientConfig::finalize ( const bool  disconnected)
inlineoverridevirtual

Reimplemented from openvpn::TunClientFactory.

Definition at line 96 of file client.hpp.

◆ new_obj()

static Ptr openvpn::TunBuilderClient::ClientConfig::new_obj ( )
inlinestatic

Definition at line 87 of file client.hpp.

Here is the caller graph for this function:

◆ new_tun_client_obj()

TunClient::Ptr openvpn::TunBuilderClient::ClientConfig::new_tun_client_obj ( openvpn_io::io_context &  io_context,
TunClientParent parent,
TransportClient transcli 
)
inlineoverridevirtual

Implements openvpn::TunClientFactory.

Definition at line 343 of file client.hpp.

◆ supports_epoch_data()

bool openvpn::TunBuilderClient::ClientConfig::supports_epoch_data ( )
inlineoverridevirtual

Return whether this tun implementation will support data v3 features (AEAD tag at the end and combined 16 bit epoch id + 48 bit packet counters).

This is more a property of the data encryption layer than of the tun device but since all of our DCO encryptions are setup with the tun setup, we also make it the responsibility of the tun client to signal v3 data layer support.

Implements openvpn::TunClientFactory.

Definition at line 102 of file client.hpp.

Member Data Documentation

◆ builder

TunBuilderBase* openvpn::TunBuilderClient::ClientConfig::builder

Definition at line 85 of file client.hpp.

◆ eer_factory

EmulateExcludeRouteFactory::Ptr openvpn::TunBuilderClient::ClientConfig::eer_factory

Definition at line 83 of file client.hpp.

◆ frame

Frame::Ptr openvpn::TunBuilderClient::ClientConfig::frame

Definition at line 81 of file client.hpp.

◆ n_parallel

int openvpn::TunBuilderClient::ClientConfig::n_parallel

Definition at line 78 of file client.hpp.

◆ retain_sd

bool openvpn::TunBuilderClient::ClientConfig::retain_sd

Definition at line 79 of file client.hpp.

◆ stats

SessionStats::Ptr openvpn::TunBuilderClient::ClientConfig::stats

Definition at line 82 of file client.hpp.

◆ tun_persist

TunPersist::Ptr openvpn::TunBuilderClient::ClientConfig::tun_persist

Definition at line 84 of file client.hpp.

◆ tun_prefix

bool openvpn::TunBuilderClient::ClientConfig::tun_prefix

Definition at line 80 of file client.hpp.

◆ tun_prop

TunProp::Config openvpn::TunBuilderClient::ClientConfig::tun_prop

Definition at line 77 of file client.hpp.


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