OpenVPN 3 Core Library
|
#include <cryptodc.hpp>
Public Types | |
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 | |
virtual bool | encrypt (BufferAllocated &buf, const unsigned char *op32)=0 |
virtual Error::Type | decrypt (BufferAllocated &buf, std::time_t now, const unsigned char *op32)=0 |
virtual unsigned int | defined () const =0 |
virtual void | init_cipher (StaticKey &&encrypt_key, StaticKey &&decrypt_key)=0 |
virtual void | init_hmac (StaticKey &&encrypt_key, StaticKey &&decrypt_key)=0 |
virtual void | init_pid (const char *recv_name, const int recv_unit, const SessionStats::Ptr &recv_stats_arg)=0 |
virtual void | init_remote_peer_id (const int remote_peer_id) |
virtual bool | consider_compression (const CompressContext &comp_ctx)=0 |
virtual void | explicit_exit_notify () |
virtual void | rekey (const RekeyType type)=0 |
![]() | |
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 33 of file cryptodc.hpp.
Definition at line 36 of file cryptodc.hpp.
anonymous enum |
Enumerator | |
---|---|
CIPHER_DEFINED | |
HMAC_DEFINED | |
CRYPTO_DEFINED | |
EXPLICIT_EXIT_NOTIFY_DEFINED |
Definition at line 48 of file cryptodc.hpp.
Enumerator | |
---|---|
ACTIVATE_PRIMARY | |
ACTIVATE_PRIMARY_MOVE | |
NEW_SECONDARY | |
PRIMARY_SECONDARY_SWAP | |
DEACTIVATE_SECONDARY | |
DEACTIVATE_ALL |
Definition at line 84 of file cryptodc.hpp.
|
pure virtual |
Implemented in openvpn::AEAD::Crypto< CRYPTO_API >, openvpn::AEADEpoch::Crypto< CRYPTO_API >, openvpn::CryptoCHM< CRYPTO_API >, and openvpn::KoRekey::Instance.
|
pure virtual |
Implemented in openvpn::AEAD::Crypto< CRYPTO_API >, openvpn::AEADEpoch::Crypto< CRYPTO_API >, openvpn::CryptoCHM< CRYPTO_API >, and openvpn::KoRekey::Instance.
|
pure virtual |
Implemented in openvpn::AEAD::Crypto< CRYPTO_API >, openvpn::AEADEpoch::Crypto< CRYPTO_API >, openvpn::CryptoCHM< CRYPTO_API >, and openvpn::KoRekey::Instance.
|
pure virtual |
Implemented in openvpn::AEAD::Crypto< CRYPTO_API >, openvpn::AEADEpoch::Crypto< CRYPTO_API >, openvpn::CryptoCHM< CRYPTO_API >, and openvpn::KoRekey::Instance.
|
inlinevirtual |
Reimplemented in openvpn::KoRekey::Instance.
Definition at line 78 of file cryptodc.hpp.
|
pure virtual |
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.
Implemented in openvpn::AEAD::Crypto< CRYPTO_API >, openvpn::AEADEpoch::Crypto< CRYPTO_API >, openvpn::CryptoCHM< CRYPTO_API >, and openvpn::KoRekey::Instance.
|
pure virtual |
Implemented in openvpn::AEAD::Crypto< CRYPTO_API >, openvpn::AEADEpoch::Crypto< CRYPTO_API >, openvpn::CryptoCHM< CRYPTO_API >, and openvpn::KoRekey::Instance.
|
pure virtual |
Implemented in openvpn::AEAD::Crypto< CRYPTO_API >, openvpn::AEADEpoch::Crypto< CRYPTO_API >, openvpn::CryptoCHM< CRYPTO_API >, and openvpn::KoRekey::Instance.
|
inlinevirtual |
Reimplemented in openvpn::KoRekey::Instance.
Definition at line 72 of file cryptodc.hpp.
|
pure virtual |
Implemented in openvpn::AEADEpoch::Crypto< CRYPTO_API >, openvpn::KoRekey::Instance, openvpn::AEAD::Crypto< CRYPTO_API >, and openvpn::CryptoCHM< CRYPTO_API >.