Botan 3.9.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 378 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 390 of file tls_extensions.h.

390: 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 655 of file tls_extensions.cpp.

655 :
656 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 388 of file tls_extensions.h.

388{ 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 115 of file tls_extensions.h.

115{ 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 651 of file tls_extensions.cpp.

651 {
652 return serialize_signature_algorithms(m_schemes);
653}

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

◆ static_type()

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

Definition at line 380 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 384 of file tls_extensions.h.

384{ 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 382 of file tls_extensions.h.

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

References static_type().


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