Botan 2.19.3
Crypto and TLS for C&
|
#include <tls_version.h>
Public Types | |
enum | Version_Code { TLS_V10 = 0x0301 , TLS_V11 = 0x0302 , TLS_V12 = 0x0303 , DTLS_V10 = 0xFEFF , DTLS_V12 = 0xFEFD } |
Public Member Functions | |
bool | is_datagram_protocol () const |
bool | known_version () const |
uint8_t | major_version () const |
uint8_t | minor_version () const |
bool | operator!= (const Protocol_Version &other) const |
bool | operator== (const Protocol_Version &other) const |
bool | operator> (const Protocol_Version &other) const |
bool | operator>= (const Protocol_Version &other) const |
Protocol_Version () | |
Protocol_Version (uint16_t code) | |
Protocol_Version (uint8_t major, uint8_t minor) | |
Protocol_Version (Version_Code named_version) | |
bool | supports_aead_modes () const |
bool | supports_ciphersuite_specific_prf () const |
bool | supports_explicit_cbc_ivs () const |
bool | supports_negotiable_signature_algorithms () const |
std::string | to_string () const |
bool | valid () const |
uint16_t | version_code () const |
Static Public Member Functions | |
static Protocol_Version | latest_dtls_version () |
static Protocol_Version | latest_tls_version () |
TLS Protocol Version
Definition at line 21 of file tls_version.h.
|
inline |
Definition at line 49 of file tls_version.h.
|
inlineexplicit |
Definition at line 51 of file tls_version.h.
|
inline |
named_version | a specific named version of the protocol |
Definition at line 56 of file tls_version.h.
|
inline |
major | the major version |
minor | the minor version |
Definition at line 63 of file tls_version.h.
bool Botan::TLS::Protocol_Version::is_datagram_protocol | ( | ) | const |
Definition at line 33 of file tls_version.cpp.
References major_version().
Referenced by Botan::TLS::Client_Hello::Client_Hello(), Botan::TLS::Client_Hello::Client_Hello(), Botan::TLS::Channel::create_handshake_state(), operator>(), Botan::TLS::Policy::send_fallback_scsv(), Botan::TLS::Server_Hello::Server_Hello(), Botan::TLS::Supported_Versions::Supported_Versions(), Botan::TLS::TLS_CBC_HMAC_AEAD_Mode::TLS_CBC_HMAC_AEAD_Mode(), and Botan::TLS::Client_Hello::update_hello_cookie().
bool Botan::TLS::Protocol_Version::known_version | ( | ) | const |
Definition at line 51 of file tls_version.cpp.
References DTLS_V10, DTLS_V12, TLS_V10, TLS_V11, and TLS_V12.
|
inlinestatic |
Definition at line 44 of file tls_version.h.
|
inlinestatic |
Definition at line 36 of file tls_version.h.
Referenced by Botan::TLS::Stream< StreamLayer, ChannelT >::setup_native_handle().
|
inline |
Definition at line 79 of file tls_version.h.
Referenced by Botan::TLS::Client_Hello::cookie_input_data(), Botan::TLS::Session::DER_encode(), Botan::TLS::Connection_Cipher_State::format_ad(), is_datagram_protocol(), Botan::TLS::Channel::received_data(), Botan::TLS::Hello_Verify_Request::serialize(), and to_string().
|
inline |
Definition at line 84 of file tls_version.h.
Referenced by Botan::TLS::Client_Hello::cookie_input_data(), Botan::TLS::Session::DER_encode(), Botan::TLS::Connection_Cipher_State::format_ad(), Botan::TLS::Hello_Verify_Request::serialize(), and to_string().
|
inline |
Definition at line 129 of file tls_version.h.
|
inline |
Definition at line 121 of file tls_version.h.
bool Botan::TLS::Protocol_Version::operator> | ( | const Protocol_Version & | other | ) | const |
Definition at line 38 of file tls_version.cpp.
References is_datagram_protocol(), Botan::TLS::Alert::PROTOCOL_VERSION, and to_string().
|
inline |
Definition at line 142 of file tls_version.h.
bool Botan::TLS::Protocol_Version::supports_aead_modes | ( | ) | const |
Definition at line 79 of file tls_version.cpp.
References DTLS_V10, TLS_V10, and TLS_V11.
Referenced by Botan::TLS::Ciphersuite::usable_in_version().
bool Botan::TLS::Protocol_Version::supports_ciphersuite_specific_prf | ( | ) | const |
Definition at line 72 of file tls_version.cpp.
References DTLS_V10, TLS_V10, and TLS_V11.
Referenced by Botan::TLS::Handshake_Hash::final().
bool Botan::TLS::Protocol_Version::supports_explicit_cbc_ivs | ( | ) | const |
Definition at line 67 of file tls_version.cpp.
References TLS_V10.
Referenced by Botan::TLS::Ciphersuite::nonce_bytes_from_record(), and Botan::TLS::TLS_CBC_HMAC_AEAD_Mode::TLS_CBC_HMAC_AEAD_Mode().
bool Botan::TLS::Protocol_Version::supports_negotiable_signature_algorithms | ( | ) | const |
Definition at line 60 of file tls_version.cpp.
References DTLS_V10, TLS_V10, and TLS_V11.
Referenced by Botan::TLS::Certificate_Req::Certificate_Req(), Botan::TLS::Certificate_Verify::Certificate_Verify(), Botan::TLS::Client_Hello::Client_Hello(), Botan::TLS::Client_Hello::Client_Hello(), and Botan::TLS::Server_Key_Exchange::Server_Key_Exchange().
std::string Botan::TLS::Protocol_Version::to_string | ( | ) | const |
Definition at line 15 of file tls_version.cpp.
References major_version(), and minor_version().
Referenced by Botan::TLS::Client_Hello::Client_Hello(), Botan::TLS::Client_Hello::Client_Hello(), Botan::TLS::Channel::create_handshake_state(), and operator>().
|
inline |
Definition at line 69 of file tls_version.h.
|
inline |