37 #ifndef VIRGIL_CRYPTO_ERROR_H
38 #define VIRGIL_CRYPTO_ERROR_H
41 #include <system_error>
43 #include <virgil/crypto/VirgilCryptoException.h>
45 namespace virgil {
namespace crypto {
69 Undefined = std::numeric_limits<int>::max()
81 const char*
name()
const noexcept
override;
89 std::string
message(
int ev)
const noexcept
override;
136 #endif //VIRGIL_CRYPTO_ERROR_H
Invalid format of the Signature.
Invalid format of the Public Key.
VirgilCryptoError
Specific error codes for the crypto library.
Definition: VirgilCryptoError.h:51
Security prerequisite is broken.
Structure maximum size was exceeded.
Algorithm is not supported in the current build.
Recipient with given identifier is not found.
Function call prerequisite is broken.
Root namespace for all Virgil Security libraries.
Definition: VirgilAsn1Compatible.h:46
const VirgilCryptoErrorCategory & crypto_category() noexcept
Return singleton instance of the crypto error category.
Private Key password mismatch.
This is specific error category that contains information about crypto library errors.
Definition: VirgilCryptoError.h:76
Argument given to a function is invalid.
VirgilCryptoException make_error(VirgilCryptoError ev)
Build exception with given error value and corresond error category.
Definition: VirgilCryptoError.h:106
const char * name() const noexcept override
std::string message(int ev) const noexcept override
Signature validation failed.
Object is not initialized with specific algorithm, so can't be used.
This only exception that crypto library can produce.
Definition: VirgilCryptoException.h:54
Invalid format of the Private Key.
Recipient with given password is not found.
Given parameter is null or empty.