Botan
2.1.0
Crypto and TLS for C++11
|
#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 (Version_Code named_version) | |
Protocol_Version (uint8_t major, uint8_t minor) | |
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 |
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.
|
inline |
named_version | a specific named version of the protocol |
Definition at line 54 of file tls_version.h.
|
inline |
major | the major version |
minor | the minor version |
Definition at line 61 of file tls_version.h.
bool Botan::TLS::Protocol_Version::is_datagram_protocol | ( | ) | const |
Definition at line 34 of file tls_version.cpp.
References major_version().
Referenced by 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::Client_Hello::update_hello_cookie(), and Botan::TLS::write_record().
bool Botan::TLS::Protocol_Version::known_version | ( | ) | const |
|
inlinestatic |
Definition at line 44 of file tls_version.h.
Referenced by Botan::TLS::Policy::latest_supported_version().
|
inlinestatic |
Definition at line 36 of file tls_version.h.
Referenced by Botan::TLS::Policy::latest_supported_version().
|
inline |
Definition at line 77 of file tls_version.h.
References Botan::get_byte().
Referenced by Botan::TLS::Client_Key_Exchange::Client_Key_Exchange(), Botan::TLS::Session::DER_encode(), Botan::TLS::Connection_Cipher_State::format_ad(), is_datagram_protocol(), Botan::TLS::Hello_Verify_Request::serialize(), to_string(), and Botan::TLS::write_record().
|
inline |
Definition at line 82 of file tls_version.h.
References Botan::get_byte().
Referenced by Botan::TLS::Client_Key_Exchange::Client_Key_Exchange(), Botan::TLS::Session::DER_encode(), Botan::TLS::Connection_Cipher_State::format_ad(), Botan::TLS::Hello_Verify_Request::serialize(), to_string(), and Botan::TLS::write_record().
|
inline |
Definition at line 122 of file tls_version.h.
|
inline |
Definition at line 114 of file tls_version.h.
bool Botan::TLS::Protocol_Version::operator> | ( | const Protocol_Version & | other | ) | const |
Definition at line 39 of file tls_version.cpp.
References is_datagram_protocol(), Botan::TLS::Alert::PROTOCOL_VERSION, and to_string().
|
inline |
Definition at line 135 of file tls_version.h.
bool Botan::TLS::Protocol_Version::supports_aead_modes | ( | ) | const |
Definition at line 81 of file tls_version.cpp.
References DTLS_V12, and TLS_V12.
Referenced by Botan::TLS::Policy::ciphersuite_list().
bool Botan::TLS::Protocol_Version::supports_ciphersuite_specific_prf | ( | ) | const |
Definition at line 75 of file tls_version.cpp.
References DTLS_V12, and TLS_V12.
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 DTLS_V10, DTLS_V12, TLS_V11, and TLS_V12.
Referenced by Botan::TLS::Connection_Cipher_State::Connection_Cipher_State().
bool Botan::TLS::Protocol_Version::supports_negotiable_signature_algorithms | ( | ) | const |
Definition at line 61 of file tls_version.cpp.
References DTLS_V12, and TLS_V12.
Referenced by Botan::TLS::Certificate_Req::Certificate_Req(), Botan::TLS::Certificate_Verify::Certificate_Verify(), 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 16 of file tls_version.cpp.
References major_version(), Botan::CT::min(), minor_version(), and Botan::ASN1::to_string().
Referenced by Botan::TLS::Channel::create_handshake_state(), and operator>().
|
inline |
Definition at line 67 of file tls_version.h.