OpenVPN 3 Core Library
|
#include <crypto_aead_epoch.hpp>
Public Member Functions | |
Crypto (SSLLib::Ctx libctx_arg, CryptoDCSettingsData dc_settings_data, const Frame::Ptr &frame_arg, const SessionStats::Ptr &stats_arg) | |
bool | encrypt (BufferAllocated &buf, const unsigned char *op32) override |
Error::Type | decrypt (BufferAllocated &buf, const std::time_t now, const unsigned char *op32) override |
void | init_cipher (StaticKey &&encrypt_key, StaticKey &&decrypt_key) override |
void | init_hmac (StaticKey &&encrypt_key, StaticKey &&decrypt_key) override |
void | init_pid (const char *recv_name, const int recv_unit, const SessionStats::Ptr &recv_stats_arg) override |
unsigned int | defined () const override |
bool | consider_compression (const CompressContext &comp_ctx) override |
void | rekey (const RekeyType type) override |
void | increase_send_epoch () |
![]() | |
virtual void | init_remote_peer_id (const int remote_peer_id) |
virtual void | explicit_exit_notify () |
![]() | |
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. | |
Private Attributes | |
BufferAllocated | work_encrypt |
BufferAllocated | work_decrypt |
CryptoDCSettingsData | dc_settings |
Frame::Ptr | frame |
SessionStats::Ptr | stats |
SSLLib::Ctx | libctx |
DataChannelEpoch | dce |
Additional Inherited Members | |
![]() | |
enum | { CIPHER_DEFINED = (1 << 0) , HMAC_DEFINED = (1 << 1) , CRYPTO_DEFINED = (1 << 2) , EXPLICIT_EXIT_NOTIFY_DEFINED = (1 << 3) } |
enum | RekeyType { ACTIVATE_PRIMARY , ACTIVATE_PRIMARY_MOVE , NEW_SECONDARY , PRIMARY_SECONDARY_SWAP , DEACTIVATE_SECONDARY , DEACTIVATE_ALL } |
typedef RCPtr< CryptoDCInstance > | Ptr |
![]() | |
typedef RCPtr< RC > | Ptr |
![]() | |
static constexpr bool | is_thread_safe () |
Delegates call to RCImpl and returns the result. | |
Definition at line 35 of file crypto_aead_epoch.hpp.
|
inline |
Definition at line 42 of file crypto_aead_epoch.hpp.
|
inlineoverridevirtual |
Implements openvpn::CryptoDCInstance.
Definition at line 204 of file crypto_aead_epoch.hpp.
|
inlineoverridevirtual |
Implements openvpn::CryptoDCInstance.
Definition at line 98 of file crypto_aead_epoch.hpp.
|
inlineoverridevirtual |
Implements openvpn::CryptoDCInstance.
Definition at line 195 of file crypto_aead_epoch.hpp.
|
inlineoverridevirtual |
Implements openvpn::CryptoDCInstance.
Definition at line 56 of file crypto_aead_epoch.hpp.
|
inline |
Definition at line 214 of file crypto_aead_epoch.hpp.
|
inlineoverridevirtual |
Initialised the encryption/decryption cipher of the classs. Note that this is and init_hmac need to typically called before encrypt/decrypt can be called.
Implements openvpn::CryptoDCInstance.
Definition at line 171 of file crypto_aead_epoch.hpp.
|
inlineoverridevirtual |
Implements openvpn::CryptoDCInstance.
Definition at line 182 of file crypto_aead_epoch.hpp.
|
inlineoverridevirtual |
Implements openvpn::CryptoDCInstance.
Definition at line 189 of file crypto_aead_epoch.hpp.
|
inlineoverridevirtual |
Implements openvpn::CryptoDCInstance.
Definition at line 209 of file crypto_aead_epoch.hpp.
|
private |
Definition at line 220 of file crypto_aead_epoch.hpp.
|
private |
Definition at line 224 of file crypto_aead_epoch.hpp.
|
private |
Definition at line 221 of file crypto_aead_epoch.hpp.
|
private |
Definition at line 223 of file crypto_aead_epoch.hpp.
|
private |
Definition at line 222 of file crypto_aead_epoch.hpp.
|
private |
Definition at line 39 of file crypto_aead_epoch.hpp.
|
private |
Definition at line 38 of file crypto_aead_epoch.hpp.