9#ifndef BOTAN_TLS_SESSION_MANAGER_STATELESS_H_
10#define BOTAN_TLS_SESSION_MANAGER_STATELESS_H_
12#include <botan/tls_session_manager.h>
40 const std::shared_ptr<RandomNumberGenerator>& rng);
43 const std::optional<Session_ID>&
id = std::nullopt,
44 bool tls12_no_ticket =
false)
override;
52 bool emits_session_tickets()
override;
55 std::optional<Session> retrieve_one(
const Session_Handle& handle)
override;
60 std::optional<SymmetricKey> get_ticket_key() noexcept;
#define BOTAN_PUBLIC_API(maj, min)
Helper class to embody a session handle in all protocol versions.
Session_Manager_Stateless(const std::shared_ptr< Credentials_Manager > &credentials_manager, const std::shared_ptr< RandomNumberGenerator > &rng)
std::optional< Session_Handle > establish(const Session &session, const std::optional< Session_ID > &id=std::nullopt, bool tls12_no_ticket=false) override
Save a new Session and assign a Session_Handle (TLS Server)
void store(const Session &session, const Session_Handle &handle) override
Save a Session under a Session_Handle (TLS Client)
size_t remove_all() override
std::vector< Session_with_Handle > find_some(const Server_Information &, const size_t) override
Internal retrieval function to find sessions to resume.
size_t remove(const Session_Handle &) override
Session_Manager(const std::shared_ptr< RandomNumberGenerator > &rng)