summaryrefslogtreecommitdiff
path: root/xmlsecurity/inc
AgeCommit message (Collapse)Author
2017-07-17gpg4libre: Wrap PGPOwner in own namespaceSamuel Mehrbrodt
as recommended by W3C: https://www.w3.org/TR/xmldsig-core/#sec-PGPData Change-Id: I2cc0ae24eefc9137d2e3432da1d65e44245c7616 Reviewed-on: https://gerrit.libreoffice.org/40058 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
2017-07-17svl: move byte-array verification from vclAshod Nakashian
Also use comphelper::Base64 and DateTime::CreateFromUnixTime to avoid depending on sax. Change-Id: If1853f8d9481c9caa0625a111707531bbc495f75 Reviewed-on: https://gerrit.libreoffice.org/39993 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
2017-07-15emfplus: create a wmf/emf/emf+ primitive based importerArmin Le Grand
First steps to organize an importer that can read/interpret wmf/emf/emf+ and deliver a primitive representation for the content by parsing it. Use the same mechanisms as already applied for Svg, so to reuse abilities to keep original binary data to allow save again and embedding in files and have an implemented replacement bitmap based representation. For this, unify the used helper classes to handle more than just Svg. For 1st try, add test code and static bool switches Change-Id: I6e0a82943541d811a8f8d65a84115569fcd8cee7
2017-07-14xmlsecurity pdf verify: push_back -> emplace_backMiklos Vajna
And a few other similar small cleanups. Change-Id: I91c992f33f2166d1cf27cbc9def1b69965040658 Reviewed-on: https://gerrit.libreoffice.org/39928 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
2017-07-10tdf#108977 Show signature info also for keys we don't have locallySamuel Mehrbrodt
gpg4libre Change-Id: I89593224590007e61bce95c14922c08551282067 Reviewed-on: https://gerrit.libreoffice.org/39742 Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de> Tested-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
2017-06-27tdf#108711 GPG key selection should only be possible for ODF >= 1.2 documentsSamuel Mehrbrodt
gpg4libre Change-Id: I6dbdaefddacf55c9381d156ada20cb3f25d4b3cb Reviewed-on: https://gerrit.libreoffice.org/39263 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
2017-06-23gpg4libre: Show certificate kind OpenPGP vs. X509 as 1 table columnKatarina Behrens
Shuffled the columns around a little bit Change-Id: Ib0a979458db680d712737ff997e1c3b4e4564f3f Reviewed-on: https://gerrit.libreoffice.org/38984 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
2017-06-22xmlsecurity: implement support for building against system-xmlsecMiklos Vajna
The only remaining difference is that in the system-xmlsec case we work with the default key manager, not with the one that's only added by our xmlsec patches. This works for me for the uses I know of (see <https://lists.freedesktop.org/archives/libreoffice/2017-February/076947.html> for the motivation): signing and verifying of different signatures (bad signature, good with non-trusted CA, good with trusted CA) with software-based certificates all behave as expected. Change-Id: If3f3e2b8373ab7397db3f98070a5a2ce51fa7c06 Reviewed-on: https://gerrit.libreoffice.org/39075 Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk> Tested-by: Jenkins <ci@libreoffice.org>
2017-06-22xmlsecurity: fix loplugin:passstuffbyref warningsMiklos Vajna
Change-Id: I627abfe33e9c2fc4243276706c1624ce19943678
2017-06-21gpg4libre: make signature impl swappable in-situ during validationThorsten Behrens
Sadly we only know whether its a OpenPGP or X509 signature during parsing, so we need to switch the implementation mid-way Change-Id: Ib48a9da0105de62cfecda095df8c154b59ba8c40
2017-06-21gpg4libre: some code improvements, add metadata for OpenPGP keysThorsten Behrens
Change-Id: I1beb692b9a9a34b5f0cf743ba9e4a145ac582184
2017-06-21gpg4libre: Make viewing signatures work for gpg signaturesSamuel Mehrbrodt
Change-Id: Ic10846cb87e23ca9ffa0eb0d64c56fcf79c73a9d
2017-06-21gpg4libre: write PGPData info, get more metadata out for gpg keyThorsten Behrens
Change-Id: Ia560869ec02fca7fe4219136e1fe939e13f1e4c2
2017-06-21gpg4libre: Init xmlsec in one place before creating the gpg/x509 servicesSamuel Mehrbrodt
Change-Id: I0308d586344b5e52ad327f6650b62ac0eac7ecb9
2017-06-21gpg4libre: Having this dllpublic should be fine now since it's in inc/Samuel Mehrbrodt
Change-Id: I79c132e717a62c6274eeafe33d732616cbd6a5a6
2017-06-21gpg4libre: Make signature dialog work with two signing servicesSamuel Mehrbrodt
Change-Id: I0b47e6dba38222bb6b4f778c4206d3b37bc93089
2017-06-21gpg4libre: share static xmlsec lib between nss and gpgThorsten Behrens
In the end, the gpgme implementation uses enough of xmlsec functionality that splitting those (and ending up with two copies) was just not worth it. Change-Id: Ida87c848e4e6a770e3c697add9ceb589a9ec3930
2017-06-21xmlsecurity nss: adopt the private key of the signing certificate explicitlyMiklos Vajna
xmlsec1-customkeymanage.patch.1 of our bundled xmlsec extends xmlSecNssKeyDataX509VerifyAndExtractKey(), so that it calls xmlSecNssPKIAdoptKey() for the private key of the signing certificate. Make this explicit in xmlsecurity/ code, so we don't depend on the patched xmlSecNssKeyDataX509VerifyAndExtractKey(). This is harmless for the patched xmlsec, but it prevents this error: warn:xmlsecurity.xmlsec:26221:1:xmlsecurity/source/xmlsec/errorcallback.cxx:48: keys.c:1246: xmlSecKeysMngrGetKey() '' 'xmlSecKeysMngrFindKey' 1 ' ' warn:xmlsecurity.xmlsec:26221:1:xmlsecurity/source/xmlsec/errorcallback.cxx:48: xmldsig.c:790: xmlSecDSigCtxProcessKeyInfoNode() '' '' 45 'details=NULL' warn:xmlsecurity.xmlsec:26221:1:xmlsecurity/source/xmlsec/errorcallback.cxx:48: xmldsig.c:503: xmlSecDSigCtxProcessSignatureNode() '' 'xmlSecDSigCtxProcessKeyInfoNode' 1 ' ' warn:xmlsecurity.xmlsec:26221:1:xmlsecurity/source/xmlsec/errorcallback.cxx:48: xmldsig.c:286: xmlSecDSigCtxSign() '' 'xmlSecDSigCtxSignatureProcessNode' 1 ' ' when xmlsec is not patched. (This is needed, but not enough to build against system xmlsec.) Change-Id: I5d68a8be7aefcb529566213f9b9c2985eab6a80a Reviewed-on: https://gerrit.libreoffice.org/39023 Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk> Tested-by: Jenkins <ci@libreoffice.org>
2017-06-16loplugin:unusedfields xmlhelp..xmlsecurityNoel Grandin
Change-Id: I7e680e1913c787ce0adad5be1f84668d57ad00b3 Reviewed-on: https://gerrit.libreoffice.org/38821 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-06-07gpg4libre: add 'Start certificate manager' buttonKatarina Behrens
Change-Id: Ief3239fd1b3ff1f4e2e95e4413aa9f707f3dfb50 Reviewed-on: https://gerrit.libreoffice.org/36689 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
2017-05-19make string translation loading more uniformCaolán McNamara
change various ResId classes that use conversion operator to OUString to functions that return a OUString drop various defines drop unnecessary toString calls Change-Id: Ibeccdf2b91a46a2ed5b4b74e6024e301a023bc92 Reviewed-on: https://gerrit.libreoffice.org/37817 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2017-05-18gpg4libre: fix windows buildThorsten Behrens
Change-Id: I66b809bbf2f5ab5d9c1eaf40ba8f2c91f4bc8007
2017-05-18gpg4libre: initial GPG signature generationThorsten Behrens
* takes XML-Sec signature template * calculates digest for all added reference streams * produces signature value over canonicalized signature template * writes same as detached signature into template, streams that out Change-Id: I303e080dc25c440175fe1ae897f03cf356d5d0f2 Reviewed-on: https://gerrit.libreoffice.org/36106 Reviewed-by: Siegmund Gorr <siegmund.gorr@cib.de> Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de> Tested-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
2017-05-10xmlsecurity: slightly more modern c++Thorsten Behrens
Change-Id: I680bd57a492fe04dc98f2f61ff292e44e544a483 Reviewed-on: https://gerrit.libreoffice.org/37451 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
2017-05-08loplugin:checkunusedparams in xmlsecurityNoel Grandin
Change-Id: I9460e43264a8cbf3bb2aef83893288b767b2736f Reviewed-on: https://gerrit.libreoffice.org/37284 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-04-26remove xmlsecurity bitmaps from .src filesCaolán McNamara
Change-Id: I4a1e272f26711e2c3a3860f3b2553467b979405c
2017-04-25errinf.hxx moved out of tools and into vcl moduleChris Sherlock
ErrorInfo has a hard depency on VCL, yet is in the tools package. It is more appropriate to have it reside in the VCL module. Change-Id: Ica54a46c3a7f86cf0331ed7245234bea69c05650 Reviewed-on: https://gerrit.libreoffice.org/36839 Reviewed-by: Chris Sherlock <chris.sherlock79@gmail.com> Tested-by: Chris Sherlock <chris.sherlock79@gmail.com>
2017-04-21xmlsecurity: remove no longer needed ImplXMLSignatureListenerMiklos Vajna
The only remaining task it did was StartVerifySignatureElement() in startElement(), but that can be done in OOXMLSecParser / XSecParser easily, no need to have separate class for that. Change-Id: I0863019d3a92a911df0d60bf872dd0978eac03d5 Reviewed-on: https://gerrit.libreoffice.org/36770 Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk> Tested-by: Jenkins <ci@libreoffice.org>
2017-04-20loplugin:unusedmethodsNoel Grandin
Change-Id: Ib7a9b1b0802ca751da258065e89b412b090bb672 Reviewed-on: https://gerrit.libreoffice.org/36718 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-04-10remove reference to deleted files in pchMarkus Mohrhard
Change-Id: I1c51cc094dae710abd0d13169f5c0973908c13d8 Reviewed-on: https://gerrit.libreoffice.org/36355 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Markus Mohrhard <markus.mohrhard@googlemail.com>
2017-03-25Fix typosAndrea Gelmini
Change-Id: I901ff35ad2e0aa43a421f0996865130514a819bc Reviewed-on: https://gerrit.libreoffice.org/35663 Reviewed-by: Julien Nabet <serval2412@yahoo.fr> Tested-by: Julien Nabet <serval2412@yahoo.fr>
2017-03-24loplugin:unusedfieldsNoel Grandin
improve the plugin to find fields which are only assigned to in the constructor Change-Id: I95b5be238ebba83d950ca15093abdd1849740359 Reviewed-on: https://gerrit.libreoffice.org/35613 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-03-23xmlsecurity: ImplXMLSignatureListener is only used with XMLSignatureHelperMiklos Vajna
So no need to go via Link, can call those member functions directly. Change-Id: I36a5193965d23230ecc1ddca8675b3745933469d
2017-03-19Fix typosAndrea Gelmini
Change-Id: I5c89a47e658ae4ad2b0cdfcdb4988c4b79353085 Reviewed-on: https://gerrit.libreoffice.org/35413 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-03-17xmlsecurity: hold SAXEventKeeperImpl by rtl::Reference in XSecControllerMiklos Vajna
SAXEventKeeperImpl is the only implementation of the css::xml::crypto::sax::XSecuritySAXEventKeeper interface, and this way it's not necessary to cast to various interfaces explicitly at a lot of places. Change-Id: I25f76c88d5fefef42a6e8394a9d6de98c52b12c0 Reviewed-on: https://gerrit.libreoffice.org/35317 Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk> Tested-by: Jenkins <ci@libreoffice.org>
2017-03-16gpg4libre: No need to create separate idl files for gpg servicesSamuel Mehrbrodt
Change-Id: Ief217cd91e30433c30ac0547d28fb6eab2dc43b0 Reviewed-on: https://gerrit.libreoffice.org/35213 Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de> Tested-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
2017-03-15Fix variable names: FixedText, not FixedImageSamuel Mehrbrodt
Change-Id: I5e87305e3d4ada4b7595ab8aac55b42bc091e031 Reviewed-on: https://gerrit.libreoffice.org/35211 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
2017-03-15gpg4libre: Improve certificate details viewSamuel Mehrbrodt
* Remove SQL Syntax highlighting * Add a vertical scrollbar if neccessary Change-Id: Ib1de2694761ef650ccef16a5b5773c7be0602682 Reviewed-on: https://gerrit.libreoffice.org/35210 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
2017-03-15gpg4libre: Show "issued to/by" only if they contain a valueSamuel Mehrbrodt
Change-Id: If815c09fc6701682d6ee3e1feaf3c45ff09646aa Reviewed-on: https://gerrit.libreoffice.org/35209 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
2017-03-04-Werror,-Wunused-private-fieldStephan Bergmann
Change-Id: Id846ace3c16719b4ce5f1c9e24b7f76cc7753683
2017-03-04gpg4libre: List and view GPG keysSamuel Mehrbrodt
* Add GPG implementation of css::xml::crypto UNO interfaces (part of that is only stub atm) * List gpg keys along with other certificates * Viewing gpg certificates: Not all properties are implemented yet Change-Id: I7f60b26efe949a94bf8fe1b8d4d428002c2995b1 Reviewed-on: https://gerrit.libreoffice.org/33843 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Siegmund Gorr <siegmund.gorr@cib.de> Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
2017-03-03Remove redundant 'inline' keywordStephan Bergmann
...from function definitions occurring within class definitions. Done with a rewriting Clang plugin (to be pushed later). Change-Id: I9c6f2818a57ccdb361548895a7743107cbacdff8 Reviewed-on: https://gerrit.libreoffice.org/34874 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2017-03-02xmlsecurity: avoid using the SerialNumberAdapter wrapperMiklos Vajna
This service is only used in xmlsecurity and it's a wrapper around two free functions in the same module. Change-Id: Ibc5a026b51eda6c2b4b27b7254dedc220dbf909a Reviewed-on: https://gerrit.libreoffice.org/34772 Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk> Tested-by: Jenkins <ci@libreoffice.org>
2017-03-01Add missing includeSamuel Mehrbrodt
Change-Id: If4fa588ac7508edc886c93be7e870677b7dfeae0 Reviewed-on: https://gerrit.libreoffice.org/34742 Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2017-02-24vcl: add initial CppunitTest_vcl_pdfexportMiklos Vajna
Invoke the PDF export filter and then use the PDF tokenizer from xmlsecurity to assert the contents of created PDF file. The testcase fails with commit 6db0f1feb1d9931d2726dd11a889c58815710ce0 (tdf#106059 PDF export: create a reference XObject for PDF images, 2017-02-22) reverted. Change-Id: I90526fef41d9560ae447f586df766bc50a491c43 Reviewed-on: https://gerrit.libreoffice.org/34609 Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk> Tested-by: Jenkins <ci@libreoffice.org>
2017-01-26Remove dynamic exception specificationsStephan Bergmann
...(for now, from LIBO_INTERNAL_CODE only). See the mail thread starting at <https://lists.freedesktop.org/archives/libreoffice/2017-January/076665.html> "Dynamic Exception Specifications" for details. Most changes have been done automatically by the rewriting loplugin:dynexcspec (after enabling the rewriting mode, to be committed shortly). The way it only removes exception specs from declarations if it also sees a definition, it identified some dead declarations-w/o-definitions (that have been removed manually) and some cases where a definition appeared in multiple include files (which have also been cleaned up manually). There's also been cases of macro paramters (that were used to abstract over exception specs) that have become unused now (and been removed). Furthermore, some code needed to be cleaned up manually (avmedia/source/quicktime/ and connectivity/source/drivers/kab/), as I had no configurations available that would actually build that code. Missing @throws documentation has not been applied in such manual clean-up. Change-Id: I3408691256c9b0c12bc5332de976743626e13960 Reviewed-on: https://gerrit.libreoffice.org/33574 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2017-01-19New loplugin:dynexcspec: Add @throws documentation, xmlsecurityStephan Bergmann
Change-Id: I2447c028add359952e4bd36dbdc1d5431fe48104
2017-01-10loplugin:unusedfieldsNoel Grandin
Change-Id: I9611511cb3480734dea3c3cbaf0d659071366ad1 Reviewed-on: https://gerrit.libreoffice.org/32873 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
2016-12-21xmlsecurity: instantiate SignatureCreatorImpl directly in XSecControllerMiklos Vajna
Going via UNO for a class in the same module is an overkill. Change-Id: I3a24bc770e40be5b0a6fc34206e92f968de060ae Reviewed-on: https://gerrit.libreoffice.org/32271 Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk> Tested-by: Jenkins <ci@libreoffice.org>
2016-12-15xmlsecurity: hold XMLDocumentWrapper by rtl::Reference in XSecControllerMiklos Vajna
Going via UNO for a class in the same module is an overkill. Change-Id: Idf706782e5844fd2e553c44966e1dd1104dce8e7 Reviewed-on: https://gerrit.libreoffice.org/32030 Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk> Tested-by: Jenkins <ci@libreoffice.org>