diff options
author | Thorsten Behrens <Thorsten.Behrens@CIB.de> | 2017-12-10 23:40:00 +0100 |
---|---|---|
committer | Thorsten Behrens <Thorsten.Behrens@CIB.de> | 2018-01-13 14:17:48 +0100 |
commit | 01c7a60c051ac4562e3a317dde3c29c507f3f40b (patch) | |
tree | 0b7104b75ba3910ed0363b46bc66b4b5afaede3e /xmlsecurity | |
parent | 3271e8b90f5d522fdfe1de46b77e7f67cdaa75af (diff) |
tdf#114550: load back PGP encrypted files
This squashes the following commits from master:
gpg4libre: import PGP encryption manifest
Change-Id: Iadd7f8f1194299cb50907d8594114c89c668ebd0
gpg4libre: open encrypted files also via gpg
Change-Id: I1f626143e6c8443b4ad0c4fc5bdbd5ab8d56a451
tdf#114550 use 32 bit random session key for gpg encryption
Change-Id: I7303be71fd855aa454d07fcae04d7f42e3c9cd9c
tdf#114550 recognize sym key & init vec as valid f/ decrypt
Change-Id: Ie366f086a3c14d6b54b91b4edee8cfef1a42c44b
tdf#114550 don't use PBKDF2 in package for gpg encryption
Change-Id: Ic96b2193f8541bbd109795fb9c0212a0a10c7344
gpg4libre: add initial unit test for encryption
Change-Id: Id782dd865878ae7b8a60c7c80821b1370f6ac7e7
Change-Id: Id77b67a275bf91614ab62b65fdc69e4872247ffc
Reviewed-on: https://gerrit.libreoffice.org/47784
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Katarina Behrens <Katarina.Behrens@cib.de>
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
Diffstat (limited to 'xmlsecurity')
-rw-r--r-- | xmlsecurity/qa/unit/signing/data/encryptedGPG.odt | bin | 0 -> 13081 bytes | |||
-rw-r--r-- | xmlsecurity/qa/unit/signing/data/pubring.gpg | bin | 1834 -> 3060 bytes | |||
-rw-r--r-- | xmlsecurity/qa/unit/signing/data/secring.gpg | bin | 1304 -> 3832 bytes | |||
-rw-r--r-- | xmlsecurity/qa/unit/signing/data/trustdb.gpg | bin | 1280 -> 1360 bytes | |||
-rw-r--r-- | xmlsecurity/qa/unit/signing/signing.cxx | 13 |
5 files changed, 13 insertions, 0 deletions
diff --git a/xmlsecurity/qa/unit/signing/data/encryptedGPG.odt b/xmlsecurity/qa/unit/signing/data/encryptedGPG.odt Binary files differnew file mode 100644 index 000000000000..9490a0ce58c5 --- /dev/null +++ b/xmlsecurity/qa/unit/signing/data/encryptedGPG.odt diff --git a/xmlsecurity/qa/unit/signing/data/pubring.gpg b/xmlsecurity/qa/unit/signing/data/pubring.gpg Binary files differindex 40a8d53fb401..007ea98afd55 100644 --- a/xmlsecurity/qa/unit/signing/data/pubring.gpg +++ b/xmlsecurity/qa/unit/signing/data/pubring.gpg diff --git a/xmlsecurity/qa/unit/signing/data/secring.gpg b/xmlsecurity/qa/unit/signing/data/secring.gpg Binary files differindex d98950c22ecd..f7626df5aee3 100644 --- a/xmlsecurity/qa/unit/signing/data/secring.gpg +++ b/xmlsecurity/qa/unit/signing/data/secring.gpg diff --git a/xmlsecurity/qa/unit/signing/data/trustdb.gpg b/xmlsecurity/qa/unit/signing/data/trustdb.gpg Binary files differindex c86bb02f3d79..1966b5374cfb 100644 --- a/xmlsecurity/qa/unit/signing/data/trustdb.gpg +++ b/xmlsecurity/qa/unit/signing/data/trustdb.gpg diff --git a/xmlsecurity/qa/unit/signing/signing.cxx b/xmlsecurity/qa/unit/signing/signing.cxx index 18dd99644f35..39a6d0ca6299 100644 --- a/xmlsecurity/qa/unit/signing/signing.cxx +++ b/xmlsecurity/qa/unit/signing/signing.cxx @@ -113,6 +113,8 @@ public: void testODFBrokenStreamGPG(); /// Test a typical broken ODF signature where the XML dsig hash is corrupted. void testODFBrokenDsigGPG(); + /// Test loading an encrypted ODF document + void testODFEncryptedGPG(); #endif CPPUNIT_TEST_SUITE(SigningTest); CPPUNIT_TEST(testDescription); @@ -141,6 +143,7 @@ public: CPPUNIT_TEST(testODFUntrustedGoodGPG); CPPUNIT_TEST(testODFBrokenStreamGPG); CPPUNIT_TEST(testODFBrokenDsigGPG); + CPPUNIT_TEST(testODFEncryptedGPG); #endif CPPUNIT_TEST_SUITE_END(); @@ -739,6 +742,16 @@ void SigningTest::testODFBrokenDsigGPG() CPPUNIT_ASSERT(pObjectShell); CPPUNIT_ASSERT_EQUAL(static_cast<int>(SignatureState::BROKEN), static_cast<int>(pObjectShell->GetDocumentSignatureState())); } + +void SigningTest::testODFEncryptedGPG() +{ + createDoc(m_directories.getURLFromSrc(DATA_DIRECTORY) + "encryptedGPG.odt"); + SfxBaseModel* pBaseModel = dynamic_cast<SfxBaseModel*>(mxComponent.get()); + CPPUNIT_ASSERT(pBaseModel); + SfxObjectShell* pObjectShell = pBaseModel->GetObjectShell(); + CPPUNIT_ASSERT(pObjectShell); +} + #endif void SigningTest::registerNamespaces(xmlXPathContextPtr& pXmlXpathCtx) |