9#ifndef BOTAN_TLS_EXTERNAL_PSK_H_
10#define BOTAN_TLS_EXTERNAL_PSK_H_
12#include <botan/secmem.h>
13#include <botan/strong_type.h>
33 m_identity(
identity), m_prf_algo(
prf_algo), m_master_secret(std::move(psk)) {}
40 const std::string&
identity()
const {
return m_identity; }
48 return std::exchange(m_master_secret, {});
56 const std::string&
prf_algo()
const {
return m_prf_algo; }
59 std::string m_identity;
60 std::string m_prf_algo;
#define BOTAN_STATE_CHECK(expr)
ExternalPSK(const ExternalPSK &)=delete
const std::string & prf_algo() const
const std::string & identity() const
ExternalPSK(std::string_view identity, std::string_view prf_algo, secure_vector< uint8_t > psk)
ExternalPSK(ExternalPSK &&)=default
ExternalPSK & operator=(const ExternalPSK &)=delete
secure_vector< uint8_t > extract_master_secret()
ExternalPSK & operator=(ExternalPSK &&)=default
std::vector< T, secure_allocator< T > > secure_vector