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

#include <encrypt_chm.hpp>

Collaboration diagram for openvpn::EncryptCHM< CRYPTO_API >:
[legend]

Public Member Functions

 OPENVPN_SIMPLE_EXCEPTION (chm_unsupported_cipher_mode)
 
void encrypt (BufferAllocated &buf)
 
void set_rng (StrongRandomAPI::Ptr rng_arg)
 

Public Attributes

Frame::Ptr frame
 
CipherContext< CRYPTO_API > cipher
 
OvpnHMAC< CRYPTO_API > hmac
 
PacketIDDataSend pid_send {}
 

Private Member Functions

void prepend_hmac (BufferAllocated &buf)
 

Private Attributes

BufferAllocated work
 
StrongRandomAPI::Ptr rng
 

Detailed Description

template<typename CRYPTO_API>
class openvpn::EncryptCHM< CRYPTO_API >

Definition at line 32 of file encrypt_chm.hpp.

Member Function Documentation

◆ encrypt()

template<typename CRYPTO_API >
void openvpn::EncryptCHM< CRYPTO_API >::encrypt ( BufferAllocated buf)
inline

Definition at line 37 of file encrypt_chm.hpp.

◆ OPENVPN_SIMPLE_EXCEPTION()

template<typename CRYPTO_API >
openvpn::EncryptCHM< CRYPTO_API >::OPENVPN_SIMPLE_EXCEPTION ( chm_unsupported_cipher_mode  )

◆ prepend_hmac()

template<typename CRYPTO_API >
void openvpn::EncryptCHM< CRYPTO_API >::prepend_hmac ( BufferAllocated buf)
inlineprivate

Definition at line 108 of file encrypt_chm.hpp.

Here is the caller graph for this function:

◆ set_rng()

template<typename CRYPTO_API >
void openvpn::EncryptCHM< CRYPTO_API >::set_rng ( StrongRandomAPI::Ptr  rng_arg)
inline

Definition at line 95 of file encrypt_chm.hpp.

Member Data Documentation

◆ cipher

template<typename CRYPTO_API >
CipherContext<CRYPTO_API> openvpn::EncryptCHM< CRYPTO_API >::cipher

Definition at line 101 of file encrypt_chm.hpp.

◆ frame

template<typename CRYPTO_API >
Frame::Ptr openvpn::EncryptCHM< CRYPTO_API >::frame

Definition at line 100 of file encrypt_chm.hpp.

◆ hmac

template<typename CRYPTO_API >
OvpnHMAC<CRYPTO_API> openvpn::EncryptCHM< CRYPTO_API >::hmac

Definition at line 102 of file encrypt_chm.hpp.

◆ pid_send

template<typename CRYPTO_API >
PacketIDDataSend openvpn::EncryptCHM< CRYPTO_API >::pid_send {}

Definition at line 103 of file encrypt_chm.hpp.

◆ rng

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

Definition at line 121 of file encrypt_chm.hpp.

◆ work

template<typename CRYPTO_API >
BufferAllocated openvpn::EncryptCHM< CRYPTO_API >::work
private

Definition at line 120 of file encrypt_chm.hpp.


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