OpenVPN 3 Core Library
Loading...
Searching...
No Matches
openvpn::CryptoDCSelect< CRYPTO_API > Class Template Reference

#include <cryptodcsel.hpp>

Inheritance diagram for openvpn::CryptoDCSelect< CRYPTO_API >:
[legend]
Collaboration diagram for openvpn::CryptoDCSelect< CRYPTO_API >:
[legend]

Public Types

typedef RCPtr< CryptoDCSelectPtr
 
- Public Types inherited from openvpn::CryptoDCFactory
typedef RCPtr< CryptoDCFactoryPtr
 
- Public Types inherited from openvpn::RC< thread_unsafe_refcount >
typedef RCPtr< RCPtr
 

Public Member Functions

 CryptoDCSelect (SSLLib::Ctx libctx_arg, const Frame::Ptr &frame_arg, const SessionStats::Ptr &stats_arg, const StrongRandomAPI::Ptr &rng_arg)
 
CryptoDCContext::Ptr new_obj (CryptoDCSettingsData dc_settings) 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.
 

Private Attributes

Frame::Ptr frame
 
SessionStats::Ptr stats
 
StrongRandomAPI::Ptr rng
 
SSLLib::Ctx libctx
 

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 CRYPTO_API>
class openvpn::CryptoDCSelect< CRYPTO_API >

Implements the data channel encryption and decryption in userspace

Definition at line 32 of file cryptodcsel.hpp.

Member Typedef Documentation

◆ Ptr

template<typename CRYPTO_API >
typedef RCPtr<CryptoDCSelect> openvpn::CryptoDCSelect< CRYPTO_API >::Ptr

Definition at line 35 of file cryptodcsel.hpp.

Constructor & Destructor Documentation

◆ CryptoDCSelect()

template<typename CRYPTO_API >
openvpn::CryptoDCSelect< CRYPTO_API >::CryptoDCSelect ( SSLLib::Ctx  libctx_arg,
const Frame::Ptr frame_arg,
const SessionStats::Ptr stats_arg,
const StrongRandomAPI::Ptr rng_arg 
)
inline

Definition at line 37 of file cryptodcsel.hpp.

Member Function Documentation

◆ new_obj()

template<typename CRYPTO_API >
CryptoDCContext::Ptr openvpn::CryptoDCSelect< CRYPTO_API >::new_obj ( CryptoDCSettingsData  dc_settings)
inlineoverridevirtual

Implements openvpn::CryptoDCFactory.

Definition at line 48 of file cryptodcsel.hpp.

Here is the caller graph for this function:

Member Data Documentation

◆ frame

template<typename CRYPTO_API >
Frame::Ptr openvpn::CryptoDCSelect< CRYPTO_API >::frame
private

Definition at line 62 of file cryptodcsel.hpp.

◆ libctx

template<typename CRYPTO_API >
SSLLib::Ctx openvpn::CryptoDCSelect< CRYPTO_API >::libctx
private

Definition at line 65 of file cryptodcsel.hpp.

◆ rng

template<typename CRYPTO_API >
StrongRandomAPI::Ptr openvpn::CryptoDCSelect< CRYPTO_API >::rng
private

Definition at line 64 of file cryptodcsel.hpp.

◆ stats

template<typename CRYPTO_API >
SessionStats::Ptr openvpn::CryptoDCSelect< CRYPTO_API >::stats
private

Definition at line 63 of file cryptodcsel.hpp.


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