diff --git a/modes.cpp b/modes.cpp index dee0f30f..d1b95ab4 100644 --- a/modes.cpp +++ b/modes.cpp @@ -149,6 +149,12 @@ void BlockOrientedCipherModeBase::UncheckedSetKey(const byte *key, unsigned int } } +void BlockOrientedCipherModeBase::ResizeBuffers() +{ + CipherModeBase::ResizeBuffers(); + m_buffer.New(BlockSize()); +} + void ECB_OneWay::ProcessData(byte *outString, const byte *inString, size_t length) { CRYPTOPP_ASSERT(length%BlockSize()==0); @@ -243,6 +249,12 @@ void CBC_CTS_Decryption::ProcessLastBlock(byte *outString, const byte *inString, } } +void CBC_Decryption::ResizeBuffers() +{ + BlockOrientedCipherModeBase::ResizeBuffers(); + m_temp.New(BlockSize()); +} + NAMESPACE_END #endif diff --git a/modes.h b/modes.h index eabd8fd9..9b9c2505 100644 --- a/modes.h +++ b/modes.h @@ -170,11 +170,7 @@ public: protected: bool RequireAlignedInput() const {return true;} - void ResizeBuffers() - { - CipherModeBase::ResizeBuffers(); - m_buffer.New(BlockSize()); - } + void ResizeBuffers(); SecByteBlock m_buffer; }; @@ -229,11 +225,7 @@ public: void ProcessData(byte *outString, const byte *inString, size_t length); protected: - void ResizeBuffers() - { - BlockOrientedCipherModeBase::ResizeBuffers(); - m_temp.New(BlockSize()); - } + void ResizeBuffers(); AlignedSecByteBlock m_temp; };