diff options
author | Jack Lloyd <[email protected]> | 2015-12-11 09:42:06 -0500 |
---|---|---|
committer | Jack Lloyd <[email protected]> | 2015-12-11 09:42:06 -0500 |
commit | 6b9a3a534071ef84c121c406559f8fc7ad546104 (patch) | |
tree | c11480ad1f07e443ba4e992fefcd618b532c2e93 /src/lib/modes/cbc/cbc.cpp | |
parent | 79a51627ee11f4d7f55d589751b30463d1f02a76 (diff) |
Reroot the exception hierarchy into a toplevel Exception class
As the alternatives are unfortunate for applications trying to catch
all library errors, and it seems deriving from std::runtime_error
causes problems with MSVC DLLs (GH #340)
Effectively reverts 2837e915d82e43
Diffstat (limited to 'src/lib/modes/cbc/cbc.cpp')
-rw-r--r-- | src/lib/modes/cbc/cbc.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/lib/modes/cbc/cbc.cpp b/src/lib/modes/cbc/cbc.cpp index 1e3c6d6e3..fedeaf20d 100644 --- a/src/lib/modes/cbc/cbc.cpp +++ b/src/lib/modes/cbc/cbc.cpp @@ -17,7 +17,7 @@ CBC_Mode::CBC_Mode(BlockCipher* cipher, BlockCipherModePaddingMethod* padding) : m_state(m_cipher->block_size()) { if(m_padding && !m_padding->valid_blocksize(cipher->block_size())) - throw std::invalid_argument("Padding " + m_padding->name() + + throw Invalid_Argument("Padding " + m_padding->name() + " cannot be used with " + cipher->name() + "/CBC"); } @@ -127,7 +127,7 @@ void CBC_Encryption::finish(secure_vector<byte>& buffer, size_t offset) padding().add_padding(buffer, bytes_in_final_block, BS); if((buffer.size()-offset) % BS) - throw std::runtime_error("Did not pad to full block size in " + name()); + throw Exception("Did not pad to full block size in " + name()); update(buffer, offset); } |