Botan 3.12.0
Crypto and TLS for C&
Botan::TLS::Signature_Algorithms Class Referencefinal

#include <tls_extensions.h>

Inheritance diagram for Botan::TLS::Signature_Algorithms:
Botan::TLS::Extension

Public Member Functions

bool empty () const override
virtual bool is_implemented () const
std::vector< uint8_t > serialize (Connection_Side whoami) const override
 Signature_Algorithms (std::vector< Signature_Scheme > schemes)
 Signature_Algorithms (TLS_Data_Reader &reader, uint16_t extension_size)
const std::vector< Signature_Scheme > & supported_schemes () const
Extension_Code type () const override

Static Public Member Functions

static Extension_Code static_type ()

Detailed Description

Signature Algorithms Extension for TLS 1.2 (RFC 5246)

Definition at line 263 of file tls_extensions.h.

Constructor & Destructor Documentation

◆ Signature_Algorithms() [1/2]

Botan::TLS::Signature_Algorithms::Signature_Algorithms ( std::vector< Signature_Scheme > schemes)
inlineexplicit

Definition at line 275 of file tls_extensions.h.

275: m_schemes(std::move(schemes)) {}

◆ Signature_Algorithms() [2/2]

Botan::TLS::Signature_Algorithms::Signature_Algorithms ( TLS_Data_Reader & reader,
uint16_t extension_size )

Definition at line 733 of file tls_extensions.cpp.

733 :
734 m_schemes(parse_signature_algorithms(reader, extension_size)) {}

Member Function Documentation

◆ empty()

bool Botan::TLS::Signature_Algorithms::empty ( ) const
inlineoverridevirtual
Returns
if we should encode this extension or not

Implements Botan::TLS::Extension.

Definition at line 273 of file tls_extensions.h.

273{ return m_schemes.empty(); }

◆ is_implemented()

virtual bool Botan::TLS::Extension::is_implemented ( ) const
inlinevirtualinherited
Returns
true if this extension is known and implemented by Botan

Reimplemented in Botan::TLS::Unknown_Extension.

Definition at line 100 of file tls_extensions.h.

100{ return true; }

◆ serialize()

std::vector< uint8_t > Botan::TLS::Signature_Algorithms::serialize ( Connection_Side whoami) const
overridevirtual
Returns
serialized binary for the extension

Implements Botan::TLS::Extension.

Definition at line 729 of file tls_extensions.cpp.

729 {
730 return serialize_signature_algorithms(m_schemes);
731}

Referenced by Botan::TLS::Certificate_Request_12::serialize().

◆ static_type()

Extension_Code Botan::TLS::Signature_Algorithms::static_type ( )
inlinestatic

Definition at line 265 of file tls_extensions.h.

References Botan::TLS::SignatureAlgorithms.

Referenced by type().

◆ supported_schemes()

const std::vector< Signature_Scheme > & Botan::TLS::Signature_Algorithms::supported_schemes ( ) const
inline

Definition at line 269 of file tls_extensions.h.

269{ return m_schemes; }

◆ type()

Extension_Code Botan::TLS::Signature_Algorithms::type ( ) const
inlineoverridevirtual
Returns
code number of the extension

Implements Botan::TLS::Extension.

Definition at line 267 of file tls_extensions.h.

267{ return static_type(); }
static Extension_Code static_type()

References static_type().


The documentation for this class was generated from the following files: