8 #ifndef BOTAN_EXCEPTION_H__
9 #define BOTAN_EXCEPTION_H__
11 #include <botan/types.h>
12 #include <botan/parsing.h>
48 Exception(
"Internal error: " + err)
58 Invalid_Argument(name +
" cannot accept a key of length " +
69 const std::string& pad) :
70 Invalid_Argument(
"Padding method " + pad +
71 " cannot be used with " + mode)
81 Invalid_Argument(
"IV length " +
to_string(bad_len) +
82 " is invalid for " + mode)
112 Lookup_Error(
"Could not find any algorithm named \"" + name +
"\"")
122 Invalid_Argument(
"Invalid algorithm name: " + name)
132 Invalid_Argument(
"Encoding error: " + name) {}
141 Invalid_Argument(
"Decoding error: " + name) {}
150 Exception(
"Integrity failure: " + msg) {}
168 Exception(
"I/O error: " + err)
187 const char*
what()
const throw()
188 {
return "Ran out of memory, allocation failed"; }
Invalid_IV_Length(const std::string &mode, size_t bad_len)
Invalid_Block_Size(const std::string &mode, const std::string &pad)
Invalid_Key_Length(const std::string &name, size_t length)
const char * what() const
Algorithm_Not_Found(const std::string &name)
PRNG_Unseeded(const std::string &algo)
Stream_IO_Error(const std::string &err)
std::invalid_argument Invalid_Argument
Internal_Error(const std::string &err)
Integrity_Failure(const std::string &msg)
Decoding_Error(const std::string &name)
Invalid_Algorithm_Name(const std::string &name)
Self_Test_Failure(const std::string &err)
std::runtime_error Exception
Invalid_State(const std::string &err)
std::string to_string(u64bit n, size_t min_len)
Lookup_Error(const std::string &err)
Policy_Violation(const std::string &err)
Encoding_Error(const std::string &name)
Invalid_OID(const std::string &oid)