Botan 3.13.0
Crypto and TLS for C&
Botan::TLS::Encrypt_then_MAC Class Referencefinal

#include <tls_extensions_12.h>

Inheritance diagram for Botan::TLS::Encrypt_then_MAC:
Botan::TLS::Extension

Public Member Functions

bool empty () const override
 Encrypt_then_MAC ()=default
 Encrypt_then_MAC (TLS_Data_Reader &reader, uint16_t extension_size)
virtual bool is_implemented () const
std::vector< uint8_t > serialize (Connection_Side whoami) const override
Extension_Code type () const override

Static Public Member Functions

static Extension_Code static_type ()

Detailed Description

Encrypt-then-MAC Extension (RFC 7366)

Definition at line 138 of file tls_extensions_12.h.

Constructor & Destructor Documentation

◆ Encrypt_then_MAC() [1/2]

Botan::TLS::Encrypt_then_MAC::Encrypt_then_MAC ( )
default

References Encrypt_then_MAC().

Referenced by Encrypt_then_MAC().

◆ Encrypt_then_MAC() [2/2]

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

Definition at line 108 of file tls_extensions_12.cpp.

108 {
109 if(extension_size != 0) {
110 throw Decoding_Error("Invalid encrypt_then_mac extension");
111 }
112}

Member Function Documentation

◆ empty()

bool Botan::TLS::Encrypt_then_MAC::empty ( ) const
inlineoverridevirtual

Predicate if a TLS extension should be included or not

Returns
true if this extension should be encoded, otherwise false

Implements Botan::TLS::Extension.

Definition at line 146 of file tls_extensions_12.h.

146{ return false; }

◆ is_implemented()

virtual bool Botan::TLS::Extension::is_implemented ( ) const
inlinevirtualinherited

Predicate if the extension is known/implemented

Note
this exists primarily to support unknown extension handling and doesn't need to be overridden even in the custom extension case.
Returns
true if this extension is known

Reimplemented in Botan::TLS::Unknown_Extension.

Definition at line 113 of file tls_extensions.h.

113{ return true; }

◆ serialize()

std::vector< uint8_t > Botan::TLS::Encrypt_then_MAC::serialize ( Connection_Side whoami) const
overridevirtual

Serialize a TLS extension

Parameters
whoamiwhich peer we are acting as in the protocol
Returns
serialized binary for the extension

Implements Botan::TLS::Extension.

Definition at line 114 of file tls_extensions_12.cpp.

114 {
115 return std::vector<uint8_t>();
116}

◆ static_type()

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

Definition at line 140 of file tls_extensions_12.h.

References Botan::TLS::EncryptThenMac.

Referenced by type().

◆ type()

Extension_Code Botan::TLS::Encrypt_then_MAC::type ( ) const
inlineoverridevirtual

Return TLS extension code

Returns
code number of the extension

Implements Botan::TLS::Extension.

Definition at line 142 of file tls_extensions_12.h.

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

References static_type().


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