aboutsummaryrefslogtreecommitdiffstats
path: root/src/block/rc6/rc6.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/block/rc6/rc6.cpp')
-rw-r--r--src/block/rc6/rc6.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/block/rc6/rc6.cpp b/src/block/rc6/rc6.cpp
index 53ca5a7a2..5a6c1091d 100644
--- a/src/block/rc6/rc6.cpp
+++ b/src/block/rc6/rc6.cpp
@@ -113,6 +113,8 @@ void RC6::decrypt_n(const byte in[], byte out[], size_t blocks) const
*/
void RC6::key_schedule(const byte key[], size_t length)
{
+ S.resize(44);
+
const size_t WORD_KEYLENGTH = (((length - 1) / 4) + 1);
const size_t MIX_ROUNDS = 3 * std::max(WORD_KEYLENGTH, S.size());
@@ -120,7 +122,7 @@ void RC6::key_schedule(const byte key[], size_t length)
for(size_t i = 1; i != S.size(); ++i)
S[i] = S[i-1] + 0x9E3779B9;
- SecureVector<u32bit> K(8);
+ secure_vector<u32bit> K(8);
for(s32bit i = length-1; i >= 0; --i)
K[i/4] = (K[i/4] << 8) + key[i];