Botan 3.9.0
Crypto and TLS for C&
|
#include <tls_messages.h>
Public Member Functions | |
uint16_t | ciphersuite () const |
const Extensions & | extensions () const |
std::optional< Protocol_Version > | random_signals_downgrade () const |
Protocol_Version | selected_version () const final |
std::vector< uint8_t > | serialize () const override |
const Session_ID & | session_id () const |
Handshake_Type | type () const override |
std::string | type_string () const |
Handshake_Type | wire_type () const override |
Static Public Member Functions | |
static std::variant< Hello_Retry_Request, Server_Hello_13 > | create (const Client_Hello_13 &ch, bool hello_retry_request_allowed, Session_Manager &session_mgr, Credentials_Manager &credentials_mgr, RandomNumberGenerator &rng, const Policy &policy, Callbacks &cb) |
static std::variant< Hello_Retry_Request, Server_Hello_13, Server_Hello_12 > | parse (const std::vector< uint8_t > &buf) |
Protected Member Functions | |
void | basic_validation () const |
uint8_t | compression_method () const |
std::set< Extension_Code > | extension_types () const |
Hello_Retry_Request (const Client_Hello_13 &ch, Named_Group selected_group, const Policy &policy, Callbacks &cb) | |
Hello_Retry_Request (std::unique_ptr< Server_Hello_Internal > data) | |
Protocol_Version | legacy_version () const |
const std::vector< uint8_t > & | random () const |
Protected Attributes | |
std::unique_ptr< Server_Hello_Internal > | m_data |
Static Protected Attributes | |
static const struct Botan::TLS::Server_Hello_13::Hello_Retry_Request_Tag | as_hello_retry_request |
static const struct Botan::TLS::Server_Hello_13::Hello_Retry_Request_Creation_Tag | as_new_hello_retry_request |
static const struct Botan::TLS::Server_Hello_13::Server_Hello_Tag | as_server_hello |
Friends | |
class | Server_Hello_13 |
Definition at line 453 of file tls_messages.h.
|
explicitprotected |
Definition at line 790 of file msg_server_hello.cpp.
References Botan::TLS::Server_Hello_13::as_hello_retry_request, and Server_Hello_13.
Referenced by Server_Hello_13.
|
protected |
Definition at line 793 of file msg_server_hello.cpp.
References Botan::TLS::Server_Hello_13::as_new_hello_retry_request, BOTAN_STATE_CHECK, Botan::TLS::Client_Hello::extensions(), Botan::TLS::Extensions::get(), Botan::TLS::Extensions::has(), Botan::TLS::Server_Hello::m_data, Botan::TLS::Key_Share::offered_groups(), Botan::TLS::Server, Server_Hello_13, Botan::TLS::Server_Hello::session_id(), Botan::TLS::Callbacks::tls_modify_extensions(), Botan::TLS::TLS_V12, type(), and Botan::value_exists().
|
protectedinherited |
Validation that applies to both Server Hello and Hello Retry Request
Definition at line 543 of file msg_server_hello.cpp.
References BOTAN_ASSERT_NOMSG, Botan::TLS::Server_Hello::compression_method(), Botan::TLS::Server_Hello::extensions(), Botan::TLS::Server_Hello::legacy_version(), Botan::TLS::Server_Hello::m_data, selected_version(), and Botan::to_string().
Referenced by Server_Hello_13(), and Server_Hello_13().
|
inherited |
Definition at line 217 of file msg_server_hello.cpp.
References m_data.
Referenced by Botan::TLS::Client_Hello_13::retry(), Botan::TLS::Server_Hello_12::Server_Hello_12(), and ~Server_Hello().
|
protectedinherited |
Definition at line 209 of file msg_server_hello.cpp.
References m_data.
Referenced by Botan::TLS::Server_Hello_13::basic_validation(), selected_version(), and Botan::TLS::Server_Hello_12::Server_Hello_13.
|
staticinherited |
Definition at line 462 of file msg_server_hello.cpp.
References BOTAN_ASSERT_NOMSG, BOTAN_STATE_CHECK, Botan::TLS::Policy::choose_key_exchange_group(), Botan::TLS::Client_Hello::extensions(), Server_Hello_13(), and Botan::value_exists().
|
protectedinherited |
Definition at line 221 of file msg_server_hello.cpp.
References m_data.
Referenced by selected_version(), and Botan::TLS::Server_Hello_12::Server_Hello_13.
|
inherited |
Definition at line 225 of file msg_server_hello.cpp.
References m_data.
Referenced by Botan::TLS::Server_Hello_13::basic_validation(), Botan::TLS::Client_Hello_13::retry(), Botan::TLS::Server_Hello_13::Server_Hello_13(), Botan::TLS::Server_Hello_13::Server_Hello_13(), and ~Server_Hello().
|
protectedinherited |
Definition at line 201 of file msg_server_hello.cpp.
References m_data.
Referenced by Botan::TLS::Server_Hello_13::basic_validation(), selected_version(), and Botan::TLS::Server_Hello_12::Server_Hello_13.
|
staticinherited |
Definition at line 518 of file msg_server_hello.cpp.
References Server_Hello_13().
|
protectedinherited |
Definition at line 205 of file msg_server_hello.cpp.
References m_data.
Referenced by selected_version(), and Botan::TLS::Server_Hello_12::Server_Hello_13.
|
inherited |
Return desired downgrade version indicated by hello random, if any.
Definition at line 770 of file msg_server_hello.cpp.
References Botan::load_be(), and Botan::TLS::Server_Hello::m_data.
|
finalvirtualinherited |
Implements Botan::TLS::Server_Hello.
Definition at line 782 of file msg_server_hello.cpp.
References BOTAN_ASSERT_NOMSG, and Botan::TLS::Server_Hello::m_data.
Referenced by basic_validation().
|
overridevirtualinherited |
Implements Botan::TLS::Handshake_Message.
Definition at line 177 of file msg_server_hello.cpp.
References Botan::TLS::append_tls_length_value(), Botan::get_byte(), m_data, serialize(), Botan::TLS::Server, and Server_Hello().
Referenced by serialize(), and ~Server_Hello().
|
inherited |
Definition at line 213 of file msg_server_hello.cpp.
References m_data.
Referenced by Botan::TLS::Hello_Retry_Request::Hello_Retry_Request(), Botan::TLS::Server_Hello_12::Server_Hello_12(), Botan::TLS::Server_Hello_12::Server_Hello_12(), Botan::TLS::Server_Hello_13::Server_Hello_13(), and ~Server_Hello().
|
inlineoverridevirtual |
Implements Botan::TLS::Handshake_Message.
Definition at line 460 of file tls_messages.h.
References Botan::TLS::HelloRetryRequest.
Referenced by Hello_Retry_Request().
|
inherited |
Definition at line 19 of file tls_handshake_state.cpp.
References Botan::TLS::handshake_type_to_string(), and type().
|
inlineoverridevirtual |
Reimplemented from Botan::TLS::Handshake_Message.
Definition at line 462 of file tls_messages.h.
References Botan::TLS::ServerHello.
|
friend |
Definition at line 455 of file tls_messages.h.
References Hello_Retry_Request(), and Server_Hello_13.
Referenced by Hello_Retry_Request(), Hello_Retry_Request(), and Server_Hello_13.
|
staticprotectedinherited |
Definition at line 459 of file msg_server_hello.cpp.
Referenced by Botan::TLS::Hello_Retry_Request::Hello_Retry_Request().
|
staticprotectedinherited |
Definition at line 460 of file msg_server_hello.cpp.
Referenced by Botan::TLS::Hello_Retry_Request::Hello_Retry_Request().
|
staticprotectedinherited |
Definition at line 458 of file msg_server_hello.cpp.
|
protectedinherited |
Definition at line 304 of file tls_messages.h.
Referenced by Botan::TLS::Server_Hello_13::basic_validation(), ciphersuite(), compression_method(), extension_types(), extensions(), Botan::TLS::Hello_Retry_Request::Hello_Retry_Request(), legacy_version(), Botan::TLS::Server_Hello_12::next_protocol(), Botan::TLS::Server_Hello_12::prefers_compressed_ec_points(), random(), Botan::TLS::Server_Hello_12::random(), Botan::TLS::Server_Hello_12::random_signals_downgrade(), Botan::TLS::Server_Hello_13::random_signals_downgrade(), Botan::TLS::Server_Hello_12::renegotiation_info(), Botan::TLS::Server_Hello_12::secure_renegotiation(), Botan::TLS::Server_Hello_13::selected_version(), serialize(), Server_Hello(), Botan::TLS::Server_Hello_12::Server_Hello_12(), Botan::TLS::Server_Hello_12::Server_Hello_12(), Botan::TLS::Server_Hello_13::Server_Hello_13(), Botan::TLS::Server_Hello_13::Server_Hello_13(), Botan::TLS::Server_Hello_13::Server_Hello_13(), session_id(), Botan::TLS::Server_Hello_12::srtp_profile(), Botan::TLS::Server_Hello_12::supports_certificate_status_message(), Botan::TLS::Server_Hello_12::supports_encrypt_then_mac(), Botan::TLS::Server_Hello_12::supports_extended_master_secret(), and Botan::TLS::Server_Hello_12::supports_session_ticket().