Botan 3.6.1
Crypto and TLS for C&
Botan::Invalid_Argument Class Reference

#include <exceptn.h>

Inheritance diagram for Botan::Invalid_Argument:
Botan::Exception Botan::Invalid_Algorithm_Name Botan::Invalid_IV_Length Botan::Invalid_Key_Length Botan::Pipe::Invalid_Message_Number Botan::Unknown_PK_Field_Name

Public Member Functions

virtual int error_code () const noexcept
 
ErrorType error_type () const noexcept override
 
 Invalid_Argument (std::string_view msg)
 
 Invalid_Argument (std::string_view msg, const std::exception &e)
 
 Invalid_Argument (std::string_view msg, std::string_view where)
 
const char * what () const noexcept override
 

Detailed Description

An invalid argument was provided to an API call.

Definition at line 131 of file exceptn.h.

Constructor & Destructor Documentation

◆ Invalid_Argument() [1/3]

Botan::Invalid_Argument::Invalid_Argument ( std::string_view msg)
explicit

Definition at line 77 of file exceptn.cpp.

77: Exception(msg) {}
Exception(std::string_view msg)
Definition exceptn.cpp:71

◆ Invalid_Argument() [2/3]

Botan::Invalid_Argument::Invalid_Argument ( std::string_view msg,
std::string_view where )
explicit

Definition at line 79 of file exceptn.cpp.

79 :
80 Exception(fmt("{} in {}", msg, where)) {}
std::string fmt(std::string_view format, const T &... args)
Definition fmt.h:53

◆ Invalid_Argument() [3/3]

Botan::Invalid_Argument::Invalid_Argument ( std::string_view msg,
const std::exception & e )

Definition at line 82 of file exceptn.cpp.

82: Exception(msg, e) {}

Member Function Documentation

◆ error_code()

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

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

Definition at line 107 of file exceptn.h.

107{ return 0; }

◆ error_type()

ErrorType Botan::Invalid_Argument::error_type ( ) const
inlineoverridevirtualnoexcept

Return the "type" of error which occurred.

Reimplemented from Botan::Exception.

Reimplemented in Botan::Invalid_IV_Length, and Botan::Invalid_Key_Length.

Definition at line 139 of file exceptn.h.

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

93{ return m_msg.c_str(); }

Referenced by Botan::TLS::Client_Key_Exchange::Client_Key_Exchange(), Botan_FFI::ffi_guard_thunk(), Botan::TLS::Callbacks::tls_ephemeral_key_agreement(), Botan::TLS::Callbacks::tls_kem_encapsulate(), and Botan::X509_Certificate::to_string().


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