diff options
author | Caolán McNamara <caolanm@redhat.com> | 2016-10-20 14:52:26 +0100 |
---|---|---|
committer | Caolán McNamara <caolanm@redhat.com> | 2016-10-21 11:16:11 +0100 |
commit | 06916c839b16866b47235306d2db50850df0ad7c (patch) | |
tree | ff4aaeee04a2f1f654ddf8668b56a3a6c18692b2 /filter | |
parent | 3fabbd0a22219464545f933fc28c869a6fa89546 (diff) |
split MSCodec_Std97 into a baseclass MSCodec97
Change-Id: Ia3c41a048169c78684800def94e53fc9f3201e30
Diffstat (limited to 'filter')
-rw-r--r-- | filter/source/msfilter/mscodec.cxx | 34 |
1 files changed, 19 insertions, 15 deletions
diff --git a/filter/source/msfilter/mscodec.cxx b/filter/source/msfilter/mscodec.cxx index 9b9d243106c0..20a1f4aa8fc4 100644 --- a/filter/source/msfilter/mscodec.cxx +++ b/filter/source/msfilter/mscodec.cxx @@ -245,27 +245,31 @@ void MSCodec_Xor95::Skip( std::size_t nBytes ) mnOffset = (mnOffset + nBytes) & 0x0F; } - -MSCodec_Std97::MSCodec_Std97 () +MSCodec97::MSCodec97(rtlCipher hCipher) + : m_hCipher(hCipher) { - m_hCipher = rtl_cipher_create ( - rtl_Cipher_AlgorithmARCFOUR, rtl_Cipher_ModeStream); - OSL_ASSERT(m_hCipher != nullptr); - - m_hDigest = rtl_digest_create ( - rtl_Digest_AlgorithmMD5); - OSL_ASSERT(m_hDigest != nullptr); +} +MSCodec_Std97::MSCodec_Std97() + : MSCodec97(rtl_cipher_create(rtl_Cipher_AlgorithmARCFOUR, rtl_Cipher_ModeStream)) +{ + assert(m_hCipher != nullptr); + m_hDigest = rtl_digest_create(rtl_Digest_AlgorithmMD5); + assert(m_hDigest != nullptr); (void)memset (m_pDigestValue, 0, sizeof(m_pDigestValue)); (void)memset (m_pDocId, 0, sizeof(m_pDocId)); } -MSCodec_Std97::~MSCodec_Std97 () +MSCodec97::~MSCodec97() +{ + rtl_cipher_destroy(m_hCipher); +} + +MSCodec_Std97::~MSCodec_Std97() { (void)memset (m_pDigestValue, 0, sizeof(m_pDigestValue)); (void)memset (m_pDocId, 0, sizeof(m_pDocId)); - rtl_digest_destroy (m_hDigest); - rtl_cipher_destroy (m_hCipher); + rtl_digest_destroy(m_hDigest); } #if DEBUG_MSO_ENCRYPTION_STD97 @@ -431,7 +435,7 @@ void MSCodec_Std97::CreateSaltDigest( const sal_uInt8 nSaltData[16], sal_uInt8 n } } -bool MSCodec_Std97::Encode ( +bool MSCodec97::Encode ( const void *pData, std::size_t nDatLen, sal_uInt8 *pBuffer, std::size_t nBufLen) { @@ -441,7 +445,7 @@ bool MSCodec_Std97::Encode ( return (result == rtl_Cipher_E_None); } -bool MSCodec_Std97::Decode ( +bool MSCodec97::Decode ( const void *pData, std::size_t nDatLen, sal_uInt8 *pBuffer, std::size_t nBufLen) { @@ -451,7 +455,7 @@ bool MSCodec_Std97::Decode ( return (result == rtl_Cipher_E_None); } -bool MSCodec_Std97::Skip( std::size_t nDatLen ) +bool MSCodec97::Skip(std::size_t nDatLen) { sal_uInt8 pnDummy[ 1024 ]; std::size_t nDatLeft = nDatLen; |