OpenVPN 3 Core Library
|
#include <tunbase.hpp>
Public Types | |
typedef RCPtr< TunClientFactory > | Ptr |
![]() | |
typedef RCPtr< RC > | Ptr |
Public Member Functions | |
virtual TunClient::Ptr | new_tun_client_obj (openvpn_io::io_context &io_context, TunClientParent &parent, TransportClient *transcli)=0 |
virtual bool | layer_2_supported () const |
virtual bool | supports_proto_v3 ()=0 |
virtual void | finalize (const bool disconnected) |
![]() | |
RC () noexcept=default | |
RC (const RC &)=delete | |
virtual | ~RC ()=default |
RC & | operator= (const RC &)=delete |
olong | use_count () const noexcept |
Delegates call to RCImpl and returns the result. | |
Additional Inherited Members | |
![]() | |
static constexpr bool | is_thread_safe () |
Delegates call to RCImpl and returns the result. | |
Definition at line 93 of file tunbase.hpp.
Definition at line 95 of file tunbase.hpp.
|
inlinevirtual |
Reimplemented in openvpn::DCOTransport::ClientConfig, openvpn::TunBuilderClient::ClientConfig, openvpn::TunMac::ClientConfig, and openvpn::TunWin::ClientConfig.
Definition at line 119 of file tunbase.hpp.
|
inlinevirtual |
Reimplemented in openvpn::TunMac::ClientConfig, and openvpn::TunWin::ClientConfig.
Definition at line 100 of file tunbase.hpp.
|
pure virtual |
Implemented in openvpn::DCOTransport::ClientConfig, openvpn::TunBuilderClient::ClientConfig, openvpn::TunNull::ClientConfig, openvpn::TunLinux::ClientConfig, openvpn::TunMac::ClientConfig, and openvpn::TunWin::ClientConfig.
|
pure virtual |
Return whether this tun implementation will support data v3 features (AEAD tag at the end and 64 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.
Implemented in openvpn::DCOTransport::ClientConfig, openvpn::TunBuilderClient::ClientConfig, openvpn::TunNull::ClientConfig, openvpn::TunLinux::ClientConfig, openvpn::TunMac::ClientConfig, and openvpn::TunWin::ClientConfig.