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

#include <dcocli.hpp>

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

Public Types

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

Public Member Functions

void process_push (const OptionList &opt) override
 
void finalize (const bool disconnected) override
 
TunClientFactory::Ptr new_tun_factory (const DCO::TunConfig &conf, const OptionList &opt) override
 
TransportClientFactory::Ptr new_transport_factory (const DCO::TransportConfig &conf) override
 
TunClient::Ptr new_tun_client_obj (openvpn_io::io_context &io_context, TunClientParent &parent, TransportClient *transcli) override
 
TransportClient::Ptr new_transport_client_obj (openvpn_io::io_context &io_context, TransportClientParent *parent) override
 
bool supports_epoch_data () override
 
- 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.
 
- Public Member Functions inherited from openvpn::TransportClientFactory
virtual bool is_relay ()
 
- Public Member Functions inherited from openvpn::TunClientFactory
virtual bool layer_2_supported () const
 

Static Public Member Functions

static DCO::Ptr new_controller (TunBuilderBase *tb)
 
- 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

std::string dev_name
 
DCO::TransportConfig transport
 
DCO::TunConfig tun
 
unsigned int ping_restart_override = 0
 
- Public Attributes inherited from openvpn::DCO
TunBuilderBasebuilder = nullptr
 

Protected Member Functions

 ClientConfig ()=default
 

Detailed Description

Definition at line 63 of file dcocli.hpp.

Member Typedef Documentation

◆ Ptr

Constructor & Destructor Documentation

◆ ClientConfig()

openvpn::DCOTransport::ClientConfig::ClientConfig ( )
protecteddefault
Here is the caller graph for this function:

Member Function Documentation

◆ finalize()

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

Reimplemented from openvpn::TunClientFactory.

Definition at line 82 of file dcocli.hpp.

◆ new_controller()

static DCO::Ptr openvpn::DCOTransport::ClientConfig::new_controller ( TunBuilderBase tb)
inlinestatic

Definition at line 127 of file dcocli.hpp.

◆ new_transport_client_obj()

TransportClient::Ptr openvpn::DCOTransport::ClientConfig::new_transport_client_obj ( openvpn_io::io_context &  io_context,
TransportClientParent parent 
)
overridevirtual

◆ new_transport_factory()

TransportClientFactory::Ptr openvpn::DCOTransport::ClientConfig::new_transport_factory ( const DCO::TransportConfig conf)
inlineoverridevirtual

Implements openvpn::DCO.

Definition at line 114 of file dcocli.hpp.

◆ new_tun_client_obj()

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

Implements openvpn::TunClientFactory.

Definition at line 340 of file dcocli.hpp.

◆ new_tun_factory()

TunClientFactory::Ptr openvpn::DCOTransport::ClientConfig::new_tun_factory ( const DCO::TunConfig conf,
const OptionList opt 
)
inlineoverridevirtual

Implements openvpn::DCO.

Definition at line 90 of file dcocli.hpp.

◆ process_push()

void openvpn::DCOTransport::ClientConfig::process_push ( const OptionList opt)
inlineoverridevirtual

Reimplemented from openvpn::TransportClientFactory.

Definition at line 77 of file dcocli.hpp.

◆ supports_epoch_data()

bool openvpn::DCOTransport::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 135 of file dcocli.hpp.

Member Data Documentation

◆ dev_name

std::string openvpn::DCOTransport::ClientConfig::dev_name

Definition at line 70 of file dcocli.hpp.

◆ ping_restart_override

unsigned int openvpn::DCOTransport::ClientConfig::ping_restart_override = 0

Definition at line 75 of file dcocli.hpp.

◆ transport

DCO::TransportConfig openvpn::DCOTransport::ClientConfig::transport

Definition at line 72 of file dcocli.hpp.

◆ tun

DCO::TunConfig openvpn::DCOTransport::ClientConfig::tun

Definition at line 73 of file dcocli.hpp.


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