Botan
2.1.0
Crypto and TLS for C++11
|
#include <tls_messages.h>
Classes | |
class | Settings |
Public Member Functions | |
std::vector< uint16_t > | ciphersuites () const |
Client_Hello (Handshake_IO &io, Handshake_Hash &hash, const Policy &policy, RandomNumberGenerator &rng, const std::vector< uint8_t > &reneg_info, const Client_Hello::Settings &client_settings, const std::vector< std::string > &next_protocols) | |
Client_Hello (Handshake_IO &io, Handshake_Hash &hash, const Policy &policy, RandomNumberGenerator &rng, const std::vector< uint8_t > &reneg_info, const Session &resumed_session, const std::vector< std::string > &next_protocols) | |
Client_Hello (const std::vector< uint8_t > &buf) | |
std::vector< uint8_t > | compression_methods () const |
std::set< Handshake_Extension_Type > | extension_types () const |
std::vector< std::string > | next_protocols () const |
bool | offered_suite (uint16_t ciphersuite) const |
bool | prefers_compressed_ec_points () const |
const std::vector< uint8_t > & | random () const |
std::vector< uint8_t > | renegotiation_info () const |
bool | secure_renegotiation () const |
bool | sent_fallback_scsv () const |
bool | sent_signature_algorithms () const |
const std::vector< uint8_t > & | session_id () const |
std::vector< uint8_t > | session_ticket () const |
std::string | sni_hostname () const |
std::vector< uint16_t > | srtp_profiles () const |
std::vector< std::pair< std::string, std::string > > | supported_algos () const |
std::vector< std::string > | supported_ecc_curves () const |
std::set< std::string > | supported_sig_algos () const |
bool | supports_alpn () const |
bool | supports_cert_status_message () const |
bool | supports_encrypt_then_mac () const |
bool | supports_extended_master_secret () const |
bool | supports_session_ticket () const |
Handshake_Type | type () const override |
std::string | type_string () const |
void | update_hello_cookie (const Hello_Verify_Request &hello_verify) |
Protocol_Version | version () const |
Client Hello Message
Definition at line 67 of file tls_messages.h.
Botan::TLS::Client_Hello::Client_Hello | ( | Handshake_IO & | io, |
Handshake_Hash & | hash, | ||
const Policy & | policy, | ||
RandomNumberGenerator & | rng, | ||
const std::vector< uint8_t > & | reneg_info, | ||
const Client_Hello::Settings & | client_settings, | ||
const std::vector< std::string > & | next_protocols | ||
) |
Definition at line 73 of file msg_client_hello.cpp.
References Botan::TLS::Policy::acceptable_protocol_version(), Botan::TLS::Extensions::add(), Botan::TLS::Policy::allowed_ecc_curves(), Botan::TLS::Policy::allowed_signature_hashes(), Botan::TLS::Policy::allowed_signature_methods(), BOTAN_ASSERT, Botan::TLS::Client_Hello::Settings::hostname(), Botan::TLS::Protocol_Version::is_datagram_protocol(), Botan::TLS::Policy::negotiate_encrypt_then_mac(), Botan::TLS::Client_Hello::Settings::protocol_version(), Botan::TLS::Handshake_IO::send(), Botan::TLS::Policy::send_fallback_scsv(), Botan::TLS::Client_Hello::Settings::srp_identifier(), Botan::TLS::Policy::srtp_profiles(), Botan::TLS::Protocol_Version::supports_negotiable_signature_algorithms(), Botan::TLS::TLS_FALLBACK_SCSV, Botan::TLS::Handshake_Hash::update(), and Botan::TLS::Policy::use_ecc_point_compression().
Botan::TLS::Client_Hello::Client_Hello | ( | Handshake_IO & | io, |
Handshake_Hash & | hash, | ||
const Policy & | policy, | ||
RandomNumberGenerator & | rng, | ||
const std::vector< uint8_t > & | reneg_info, | ||
const Session & | resumed_session, | ||
const std::vector< std::string > & | next_protocols | ||
) |
Definition at line 143 of file msg_client_hello.cpp.
References Botan::TLS::Extensions::add(), Botan::TLS::Policy::allowed_ecc_curves(), Botan::TLS::Policy::allowed_signature_hashes(), Botan::TLS::Policy::allowed_signature_methods(), Botan::TLS::Session::ciphersuite_code(), Botan::TLS::Session::compression_method(), Botan::TLS::Server_Information::hostname(), Botan::TLS::Handshake_IO::send(), Botan::TLS::Session::server_info(), Botan::TLS::Session::session_ticket(), Botan::TLS::Session::srp_identifier(), Botan::TLS::Session::supports_encrypt_then_mac(), Botan::TLS::Protocol_Version::supports_negotiable_signature_algorithms(), Botan::TLS::Handshake_Hash::update(), Botan::TLS::Policy::use_ecc_point_compression(), and Botan::value_exists().
|
explicit |
Definition at line 243 of file msg_client_hello.cpp.
References Botan::TLS::Extensions::add(), Botan::TLS::Extensions::deserialize(), Botan::TLS::Extensions::get(), Botan::TLS::TLS_Data_Reader::get_byte(), Botan::TLS::TLS_Data_Reader::get_fixed(), Botan::TLS::TLS_Data_Reader::get_range(), Botan::TLS::TLS_Data_Reader::get_range_vector(), Botan::TLS::Alert::HANDSHAKE_FAILURE, Botan::TLS::Extensions::has(), Botan::TLS::Protocol_Version::is_datagram_protocol(), offered_suite(), Botan::TLS::Protocol_Version::supports_negotiable_signature_algorithms(), and Botan::TLS::TLS_EMPTY_RENEGOTIATION_INFO_SCSV.
|
inline |
Definition at line 98 of file tls_messages.h.
|
inline |
Definition at line 100 of file tls_messages.h.
|
inline |
Definition at line 218 of file tls_messages.h.
|
inline |
Definition at line 202 of file tls_messages.h.
bool Botan::TLS::Client_Hello::offered_suite | ( | uint16_t | ciphersuite | ) | const |
Definition at line 301 of file msg_client_hello.cpp.
Referenced by Client_Hello(), and sent_fallback_scsv().
|
inline |
Definition at line 128 of file tls_messages.h.
|
inline |
Definition at line 94 of file tls_messages.h.
|
inline |
Definition at line 158 of file tls_messages.h.
Referenced by Botan::TLS::Channel::secure_renegotiation_check().
|
inline |
Definition at line 153 of file tls_messages.h.
Referenced by Botan::TLS::Channel::secure_renegotiation_check(), and Botan::TLS::Server_Hello::Server_Hello().
bool Botan::TLS::Client_Hello::sent_fallback_scsv | ( | ) | const |
Definition at line 293 of file msg_client_hello.cpp.
References offered_suite(), and Botan::TLS::TLS_FALLBACK_SCSV.
|
inline |
Definition at line 197 of file tls_messages.h.
|
inline |
Definition at line 96 of file tls_messages.h.
|
inline |
Definition at line 170 of file tls_messages.h.
Referenced by Botan::TLS::Handshake_State::session_ticket().
|
inline |
Definition at line 137 of file tls_messages.h.
|
inline |
Definition at line 209 of file tls_messages.h.
Referenced by Botan::TLS::Server_Hello::Server_Hello().
|
inline |
Definition at line 106 of file tls_messages.h.
Referenced by Botan::TLS::Handshake_State::parse_sig_format().
|
inline |
Definition at line 121 of file tls_messages.h.
|
inline |
Definition at line 113 of file tls_messages.h.
|
inline |
Definition at line 177 of file tls_messages.h.
Referenced by Botan::TLS::Server_Hello::Server_Hello().
|
inline |
Definition at line 187 of file tls_messages.h.
Referenced by Botan::TLS::Server_Hello::Server_Hello().
|
inline |
Definition at line 192 of file tls_messages.h.
Referenced by Botan::TLS::Server_Hello::Server_Hello().
|
inline |
Definition at line 182 of file tls_messages.h.
Referenced by Botan::TLS::Server_Hello::Server_Hello().
|
inline |
Definition at line 165 of file tls_messages.h.
Referenced by Botan::TLS::Server_Hello::Server_Hello().
|
inlineoverridevirtual |
Implements Botan::TLS::Handshake_Message.
Definition at line 90 of file tls_messages.h.
References Botan::TLS::CLIENT_HELLO.
|
inherited |
Definition at line 17 of file tls_handshake_state.cpp.
References Botan::TLS::handshake_type_to_string(), and Botan::TLS::Handshake_Message::type().
void Botan::TLS::Client_Hello::update_hello_cookie | ( | const Hello_Verify_Request & | hello_verify | ) |
Definition at line 202 of file msg_client_hello.cpp.
References Botan::TLS::Hello_Verify_Request::cookie(), and Botan::TLS::Protocol_Version::is_datagram_protocol().
|
inline |
Definition at line 92 of file tls_messages.h.