14#ifndef OPENVPN_CRYPTO_CRYPTODCSEL_H
15#define OPENVPN_CRYPTO_CRYPTODCSEL_H
31template <
typename CRYPTO_API>
58 OPENVPN_THROW(crypto_dc_select, alg.
name() <<
": only CBC/HMAC and AEAD cipher modes supported");
const char * name() const
CryptoDCContext::Ptr new_obj(CryptoDCSettingsData dc_settings) override
RCPtr< CryptoDCSelect > Ptr
CryptoDCSelect(SSLLib::Ctx libctx_arg, const Frame::Ptr &frame_arg, const SessionStats::Ptr &stats_arg, const StrongRandomAPI::Ptr &rng_arg)
CryptoAlgs::Type cipher() const
bool useEpochKeys() const
#define OPENVPN_EXCEPTION(C)
#define OPENVPN_THROW(exc, stuff)
const Alg & get(const Type type)
Implementation of the base classes for random number generators.