Botan  2.9.0
Crypto and TLS for C++11
Public Member Functions | List of all members
Botan_FFI::FFI_Error Class Referencefinal

#include <ffi_util.h>

Inheritance diagram for Botan_FFI::FFI_Error:
Botan::Exception

Public Member Functions

int error_code () const noexcept override
 
Botan::ErrorType error_type () const noexcept override
 
 FFI_Error (const std::string &what, int err_code)
 
const char * what () const noexcept override
 

Detailed Description

Definition at line 19 of file ffi_util.h.

Constructor & Destructor Documentation

◆ FFI_Error()

Botan_FFI::FFI_Error::FFI_Error ( const std::string &  what,
int  err_code 
)
inline

Definition at line 22 of file ffi_util.h.

22  :
23  Exception("FFI error", what),
24  m_err_code(err_code)
25  {}
Exception(const std::string &msg)
Definition: exceptn.cpp:11
const char * what() const noexcept override
Definition: exceptn.h:87

Member Function Documentation

◆ error_code()

int Botan_FFI::FFI_Error::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. For error_type() is OpenSSLError, it will (if nonzero) be an OpenSSL error code from ERR_get_error.

Reimplemented from Botan::Exception.

Definition at line 27 of file ffi_util.h.

Referenced by Botan_FFI::ffi_guard_thunk().

27 { return m_err_code; }

◆ error_type()

Botan::ErrorType Botan_FFI::FFI_Error::error_type ( ) const
inlineoverridevirtualnoexcept

Return the "type" of error which occurred.

Reimplemented from Botan::Exception.

Definition at line 29 of file ffi_util.h.

References Botan::InvalidArgument.

◆ 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 87 of file exceptn.h.

Referenced by Botan::RSA_PrivateKey::create_decryption_op(), Botan::RSA_PublicKey::create_encryption_op(), and Botan_FFI::ffi_guard_thunk().

87 { return m_msg.c_str(); }

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