#include <data_epoch.hpp>
Definition at line 141 of file data_epoch.hpp.
◆ DataChannelEpoch() [1/2]
openvpn::DataChannelEpoch::DataChannelEpoch |
( |
| ) |
|
|
default |
◆ DataChannelEpoch() [2/2]
◆ check_send_iterate()
void openvpn::DataChannelEpoch::check_send_iterate |
( |
| ) |
|
Checks if the send epoch needs to be iterated and update the encryption context if needed
Definition at line 331 of file data_epoch.cpp.
◆ encrypt()
Return the context that should be used to encrypt packets
Definition at line 221 of file data_epoch.hpp.
◆ generate_encrypt_ctx()
void openvpn::DataChannelEpoch::generate_encrypt_ctx |
( |
| ) |
|
|
protected |
◆ generate_future_receive_keys()
void openvpn::DataChannelEpoch::generate_future_receive_keys |
( |
| ) |
|
|
protected |
◆ get_future_keys_count()
uint16_t openvpn::DataChannelEpoch::get_future_keys_count |
( |
| ) |
|
|
inline |
Returns the number of future receive keys that this will consider as validate candidates for decryption
Definition at line 185 of file data_epoch.hpp.
◆ iterate_send_key()
void openvpn::DataChannelEpoch::iterate_send_key |
( |
| ) |
|
Forces the use of a new epoch key for sending
Definition at line 220 of file data_epoch.cpp.
◆ lookup_decrypt_key()
Using an epoch, this function will try to retrieve a decryption key context that matches that epoch from the opt
argument
- Parameters
-
epoch | epoch of the key to lookup |
- Returns
- the key context with
Definition at line 285 of file data_epoch.cpp.
◆ replace_update_recv_key()
void openvpn::DataChannelEpoch::replace_update_recv_key |
( |
std::uint16_t |
new_epoch, |
|
|
const SessionStats::Ptr & |
stats_arg |
|
) |
| |
◆ should_renegotiate()
bool openvpn::DataChannelEpoch::should_renegotiate |
( |
| ) |
|
|
inline |
Check if the VPN session should be renegotiated to generate new epoch send/receive keys
Definition at line 194 of file data_epoch.hpp.
◆ cipher
◆ decrypt_ctx
◆ encrypt_ctx
◆ future_keys
◆ future_keys_count
uint16_t openvpn::DataChannelEpoch::future_keys_count |
|
protected |
Usage limit (q+s) for plaintext blocks + number of invocations the number of future receive keys that we calculate in advance
Definition at line 153 of file data_epoch.hpp.
◆ libctx
TLS library context to initialise the ciphers
Definition at line 148 of file data_epoch.hpp.
◆ receive
EpochKey openvpn::DataChannelEpoch::receive {} |
|
protected |
The key used to generate the last receive data channel keys
Definition at line 169 of file data_epoch.hpp.
◆ retiring_decrypt_ctx
◆ send
EpochKey openvpn::DataChannelEpoch::send {} |
|
protected |
The key used to generate the last send data channel keys
Definition at line 166 of file data_epoch.hpp.
The documentation for this class was generated from the following files: