OpenVPN 3 Core Library
|
#include <crypto_aead.hpp>
Classes | |
struct | Decrypt |
struct | Encrypt |
class | Nonce |
Public Types | |
typedef CryptoDCInstance | Base |
![]() | |
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 |
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 typename Base::RekeyType type) override |
![]() | |
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 | |
CryptoDCSettingsData | dc_settings |
Frame::Ptr | frame |
SessionStats::Ptr | stats |
SSLLib::Ctx | libctx |
Encrypt | e |
Decrypt | d |
Additional Inherited Members | |
![]() | |
static constexpr bool | is_thread_safe () |
Delegates call to RCImpl and returns the result. | |
Definition at line 42 of file crypto_aead.hpp.
typedef CryptoDCInstance openvpn::AEAD::Crypto< CRYPTO_API >::Base |
Definition at line 174 of file crypto_aead.hpp.
|
inline |
Definition at line 176 of file crypto_aead.hpp.
|
inlineoverridevirtual |
Implements openvpn::CryptoDCInstance.
Definition at line 336 of file crypto_aead.hpp.
|
inlineoverridevirtual |
Implements openvpn::CryptoDCInstance.
Definition at line 235 of file crypto_aead.hpp.
|
inlineoverridevirtual |
Implements openvpn::CryptoDCInstance.
Definition at line 325 of file crypto_aead.hpp.
|
inlineoverridevirtual |
Implements openvpn::CryptoDCInstance.
Definition at line 190 of file crypto_aead.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 293 of file crypto_aead.hpp.
|
inlineoverridevirtual |
Implements openvpn::CryptoDCInstance.
Definition at line 307 of file crypto_aead.hpp.
|
inlineoverridevirtual |
Implements openvpn::CryptoDCInstance.
Definition at line 314 of file crypto_aead.hpp.
|
inlineoverridevirtual |
Implements openvpn::CryptoDCInstance.
Definition at line 342 of file crypto_aead.hpp.
|
private |
Definition at line 352 of file crypto_aead.hpp.
|
private |
Definition at line 347 of file crypto_aead.hpp.
|
private |
Definition at line 351 of file crypto_aead.hpp.
|
private |
Definition at line 348 of file crypto_aead.hpp.
|
private |
Definition at line 350 of file crypto_aead.hpp.
|
private |
Definition at line 349 of file crypto_aead.hpp.