diff options
author | Thorsten Behrens <Thorsten.Behrens@CIB.de> | 2018-01-11 23:38:35 +0100 |
---|---|---|
committer | Thorsten Behrens <Thorsten.Behrens@CIB.de> | 2018-01-13 14:35:01 +0100 |
commit | 6df0c7bc230a424f5aefe583b591df70c6273b6f (patch) | |
tree | 20fbc447d4486c5938b471c6135f414fe6e25b0d /package | |
parent | eea58228eabec225cfec49932ae0c7b0d79fdc7f (diff) |
tdf#114550 recognize sym key & init vec as valid f/ decrypt
Otherwise package code would _only_ try to decrypt for salt and
iteration count present, which does not make sense for gpg.
Change-Id: Ie366f086a3c14d6b54b91b4edee8cfef1a42c44b
Reviewed-on: https://gerrit.libreoffice.org/47782
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
Diffstat (limited to 'package')
-rw-r--r-- | package/source/zipapi/XUnbufferedStream.cxx | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/package/source/zipapi/XUnbufferedStream.cxx b/package/source/zipapi/XUnbufferedStream.cxx index 162bab6d7580..d20b46195c3a 100644 --- a/package/source/zipapi/XUnbufferedStream.cxx +++ b/package/source/zipapi/XUnbufferedStream.cxx @@ -78,7 +78,10 @@ XUnbufferedStream::XUnbufferedStream( if (mnZipSize < 0) throw ZipIOException("The stream seems to be broken!"); - bool bHaveEncryptData = rData.is() && rData->m_aSalt.getLength() && rData->m_aInitVector.getLength() && rData->m_nIterationCount != 0; + bool bHaveEncryptData = rData.is() && rData->m_aInitVector.getLength() && + ((rData->m_aSalt.getLength() && rData->m_nIterationCount != 0) + || + rData->m_aKey.getLength()); bool bMustDecrypt = nStreamMode == UNBUFF_STREAM_DATA && bHaveEncryptData && bIsEncrypted; if ( bMustDecrypt ) |