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

#include <exceptn.h>

Inheritance diagram for Botan::Decoding_Error:
Botan::Invalid_Argument Botan::Exception Botan::BER_Decoding_Error Botan::Illegal_Point Botan::Invalid_OID Botan::PKCS8_Exception Botan::Roughtime::Roughtime_Error Botan::X509_CRL::X509_CRL_Error Botan::BER_Bad_Tag

Public Member Functions

 Decoding_Error (const std::string &msg, const std::exception &e)
 Decoding_Error (const std::string &name)
 Decoding_Error (const std::string &name, const char *exception_message)
virtual int error_code () const noexcept
ErrorType error_type () const noexcept override
const char * what () const noexcept override

Detailed Description

A decoding error occurred.

This exception derives from Invalid_Argument for historical reasons, and it does not make any real sense for it to do so. In a future major release this exception type will derive directly from Exception instead.

Definition at line 199 of file exceptn.h.

Constructor & Destructor Documentation

◆ Decoding_Error() [1/3]

Botan::Decoding_Error::Decoding_Error ( const std::string &  name)

Definition at line 147 of file exceptn.cpp.

147 :
149 {}
Invalid_Argument(const std::string &msg)
Definition: exceptn.cpp:84
std::string name

◆ Decoding_Error() [2/3]

Botan::Decoding_Error::Decoding_Error ( const std::string &  name,
const char *  exception_message 

Definition at line 155 of file exceptn.cpp.

155 :
156 Invalid_Argument(name + " failed with exception " + exception_message) {}

◆ Decoding_Error() [3/3]

Botan::Decoding_Error::Decoding_Error ( const std::string &  msg,
const std::exception &  e 

Definition at line 151 of file exceptn.cpp.

151 :
152 Invalid_Argument(msg, e)
153 {}

Member Function Documentation

◆ error_code()

virtual int Botan::Exception::error_code ( ) const

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 in Botan::Compression_Error, Botan_FFI::FFI_Error, Botan::CommonCrypto_Error, Botan::OpenSSL_Error, Botan::PKCS11::PKCS11_ReturnError, Botan::TLS::TLS_Exception, Botan::SQL_Database::SQL_DB_Error, and Botan::System_Error.

Definition at line 112 of file exceptn.h.

112{ return 0; }

◆ error_type()

ErrorType Botan::Decoding_Error::error_type ( ) const

Return the "type" of error which occurred.

Reimplemented from Botan::Invalid_Argument.

Definition at line 208 of file exceptn.h.

References Botan::DecodingFailure.

◆ what()

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

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

96{ return m_msg.c_str(); }

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

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