summaryrefslogtreecommitdiff
path: root/modes.cpp
diff options
context:
space:
mode:
authorweidai <weidai11@users.noreply.github.com>2010-08-05 09:48:04 +0000
committerweidai <weidai11@users.noreply.github.com>2010-08-05 09:48:04 +0000
commitd9384064106440d03f2e05b1475135d5722e0f7c (patch)
tree881a275084027522d12baa3ea9c63105e5c35ccf /modes.cpp
parentd43f0c7321f86b55f6bda7da58a0b8c525c03a7f (diff)
downloadcryptopp-git-d9384064106440d03f2e05b1475135d5722e0f7c.tar.gz
fix CTR mode not allowing NULL as IV
Diffstat (limited to 'modes.cpp')
-rw-r--r--modes.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/modes.cpp b/modes.cpp
index 789fafb2..46332284 100644
--- a/modes.cpp
+++ b/modes.cpp
@@ -56,7 +56,8 @@ void CFB_ModePolicy::TransformRegister()
void CFB_ModePolicy::CipherResynchronize(const byte *iv, size_t length)
{
- memcpy_s(m_register, m_register.size(), iv, BlockSize());
+ assert(length == BlockSize());
+ CopyOrZero(m_register, iv, length);
TransformRegister();
}
@@ -85,6 +86,7 @@ void OFB_ModePolicy::WriteKeystream(byte *keystreamBuffer, size_t iterationCount
void OFB_ModePolicy::CipherResynchronize(byte *keystreamBuffer, const byte *iv, size_t length)
{
+ assert(length == BlockSize());
CopyOrZero(m_register, iv, length);
}