49 const std::shared_ptr<Credentials_Manager>& creds,
50 const std::shared_ptr<const Policy>&
policy,
51 const std::shared_ptr<RandomNumberGenerator>&
rng,
52 bool is_datagram =
false,
55#if defined(BOTAN_HAS_TLS_DOWNGRADE_SUPPORT)
56 explicit Server_Impl_12(
const Channel_Impl::Downgrade_Information& downgrade_info);
68 void initiate_handshake(
Handshake_State& state,
bool force_full_renegotiation)
override;
72 const std::vector<uint8_t>& contents,
73 bool epoch0_restart)
override;
75 void process_client_hello_msg(Server_Handshake_State& pending_state,
76 const std::vector<uint8_t>& contents,
79 void process_certificate_msg(Server_Handshake_State& pending_state,
const std::vector<uint8_t>& contents);
81 void process_client_key_exchange_msg(Server_Handshake_State& pending_state,
const std::vector<uint8_t>& contents);
83 void process_change_cipher_spec_msg(Server_Handshake_State& pending_state);
85 void process_certificate_verify_msg(Server_Handshake_State& pending_state,
87 const std::vector<uint8_t>& contents);
89 void process_finished_msg(Server_Handshake_State& pending_state,
91 const std::vector<uint8_t>& contents);
93 void session_resume(Server_Handshake_State& pending_state,
const Session_with_Handle& session_info);
95 void session_create(Server_Handshake_State& pending_state);
97 std::unique_ptr<Handshake_State> new_handshake_state(std::unique_ptr<Handshake_IO> io)
override;
99 std::shared_ptr<Credentials_Manager> m_creds;
100 std::string m_next_protocol;
Channel_Impl_12(const std::shared_ptr< Callbacks > &callbacks, const std::shared_ptr< Session_Manager > &session_manager, const std::shared_ptr< RandomNumberGenerator > &rng, const std::shared_ptr< const Policy > &policy, bool is_server, bool is_datagram, size_t io_buf_sz=TLS::Channel::IO_BUF_DEFAULT_SIZE)
Server_Impl_12(const std::shared_ptr< Callbacks > &callbacks, const std::shared_ptr< Session_Manager > &session_manager, const std::shared_ptr< Credentials_Manager > &creds, const std::shared_ptr< const Policy > &policy, const std::shared_ptr< RandomNumberGenerator > &rng, bool is_datagram=false, size_t reserved_io_buffer_size=TLS::Channel::IO_BUF_DEFAULT_SIZE)