11#ifndef BOTAN_TLS_MESSAGES_INTERNAL_H_
12#define BOTAN_TLS_MESSAGES_INTERNAL_H_
14#include <botan/tls_extensions.h>
15#include <botan/tls_session.h>
16#include <botan/tls_version.h>
72 Protocol_Version
version()
const;
119 std::vector<uint8_t> r,
122 bool is_hrr =
false) :
123 m_legacy_version(lv),
124 m_session_id(std::move(sid)),
125 m_random(std::move(r)),
126 m_is_hello_retry_request(is_hrr),
136 const std::vector<uint8_t>&
random()
const {
return m_random; }
151 std::vector<uint8_t> m_random;
152 bool m_is_hello_retry_request;
153 uint16_t m_ciphersuite;
154 uint8_t m_comp_method;
std::vector< uint8_t > m_comp_methods
const Session_ID & session_id() const
const Extensions & extensions() const
const std::vector< uint8_t > & comp_methods() const
Protocol_Version m_legacy_version
const std::vector< uint8_t > & hello_cookie() const
Protocol_Version version() const
const std::vector< uint8_t > & hello_cookie_input_bits() const
std::vector< uint16_t > m_suites
const std::vector< uint8_t > & random() const
Protocol_Version legacy_version() const
std::vector< uint8_t > m_cookie_input_bits
Extensions & extensions()
const std::vector< uint16_t > & ciphersuites() const
std::vector< uint8_t > m_random
std::vector< uint8_t > m_hello_cookie
Extensions & extensions()
Server_Hello_Internal(Protocol_Version lv, Session_ID sid, std::vector< uint8_t > r, const uint16_t cs, const uint8_t cm, bool is_hrr=false)
Server_Hello_Internal(const std::vector< uint8_t > &buf)
bool is_hello_retry_request() const
uint16_t ciphersuite() const
const Extensions & extensions() const
Protocol_Version legacy_version() const
const std::vector< uint8_t > & random() const
uint8_t comp_method() const
const Session_ID & session_id() const
Protocol_Version version() const
std::vector< uint8_t > make_hello_random(RandomNumberGenerator &rng, Callbacks &cb, const Policy &policy)
Strong< std::vector< uint8_t >, struct Session_ID_ > Session_ID
holds a TLS 1.2 session ID for stateful resumption
std::vector< uint8_t > make_server_hello_random(RandomNumberGenerator &rng, Protocol_Version offered_version, Callbacks &cb, const Policy &policy)