Botan 3.0.0
Crypto and TLS for C&
Public Member Functions | List of all members
Botan::TLS::TLS_Exception Class Reference

#include <tls_exceptn.h>

Inheritance diagram for Botan::TLS::TLS_Exception:
Botan::Exception Botan::TLS::Unexpected_Message

Public Member Functions

int error_code () const noexcept override
 
ErrorType error_type () const noexcept override
 
 TLS_Exception (Alert::Type type, std::string_view err_msg="Unknown error")
 
Alert::Type type () const
 
const char * what () const noexcept override
 

Detailed Description

TLS Exception Base Class

Definition at line 21 of file tls_exceptn.h.

Constructor & Destructor Documentation

◆ TLS_Exception()

Botan::TLS::TLS_Exception::TLS_Exception ( Alert::Type  type,
std::string_view  err_msg = "Unknown error" 
)
inline

Definition at line 26 of file tls_exceptn.h.

27 :
28 Exception(err_msg), m_alert_type(type) {}
Exception(std::string_view msg)
Definition: exceptn.cpp:72
Alert::Type type() const
Definition: tls_exceptn.h:24

Member Function Documentation

◆ error_code()

int Botan::TLS::TLS_Exception::error_code ( ) const
inlineoverridevirtualnoexcept

Return an error code associated with this exception, or otherwise 0.

The domain of this error varies depending on the source, for example on POSIX systems it might be errno, while on a Windows system it might be the result of GetLastError or WSAGetLastError.

Reimplemented from Botan::Exception.

Definition at line 30 of file tls_exceptn.h.

30{ return static_cast<int>(m_alert_type); }

◆ error_type()

ErrorType Botan::TLS::TLS_Exception::error_type ( ) const
inlineoverridevirtualnoexcept

Return the "type" of error which occurred.

Reimplemented from Botan::Exception.

Definition at line 32 of file tls_exceptn.h.

Referenced by Botan::TLS::Stream< StreamLayer, ChannelT >::try_with_error_code().

◆ type()

Alert::Type Botan::TLS::TLS_Exception::type ( ) const
inline

◆ what()

const char * Botan::Exception::what ( ) const
inlineoverridenoexceptinherited

Return a descriptive string which is hopefully comprehensible to a developer. It will likely not be useful for an end user.

The string has no particular format, and the content of exception messages may change from release to release. Thus the main use of this function is for logging or debugging.

Definition at line 94 of file exceptn.h.

94{ return m_msg.c_str(); }

Referenced by Botan::TLS::Client_Key_Exchange::Client_Key_Exchange(), and Botan_FFI::ffi_guard_thunk().


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