xmlsecurity/source/component/documentdigitalsignatures.cxx | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-)
New commits: commit 08a9d2d250e041c3a6e7f7570cd2d6964dd96182 Author: Caolán McNamara <caol...@redhat.com> AuthorDate: Fri Mar 4 10:31:46 2022 +0000 Commit: Michael Stahl <michael.st...@allotropia.de> CommitDate: Thu Mar 10 11:39:25 2022 +0100 use internal SHA256Thumbprint api Change-Id: I6a51359af58dbb79b6a0399944030dbcbe97152b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/130963 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmik...@collabora.com> (cherry picked from commit f30bc3ccdfb48356910d64ee4a3dda685b11de93) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/131202 Reviewed-by: Michael Stahl <michael.st...@allotropia.de> diff --git a/xmlsecurity/source/component/documentdigitalsignatures.cxx b/xmlsecurity/source/component/documentdigitalsignatures.cxx index 8b365a1c5934..4e714014d5f8 100644 --- a/xmlsecurity/source/component/documentdigitalsignatures.cxx +++ b/xmlsecurity/source/component/documentdigitalsignatures.cxx @@ -19,9 +19,10 @@ #include <resourcemanager.hxx> -#include <digitalsignaturesdialog.hxx> +#include <certificate.hxx> #include <certificatechooser.hxx> #include <certificateviewer.hxx> +#include <digitalsignaturesdialog.hxx> #include <macrosecurity.hxx> #include <biginteger.hxx> #include <strings.hrc> @@ -676,6 +677,12 @@ sal_Bool DocumentDigitalSignatures::isAuthorTrusted( if (!aSignatureManager.init()) return false; uno::Reference<css::security::XCertificate> xCert = aSignatureManager.getSecurityEnvironment()->createCertificateFromAscii(rAuthor.RawData); + + auto pAuthor = dynamic_cast<xmlsecurity::Certificate*>(xAuthor.get()); + auto pCert = dynamic_cast<xmlsecurity::Certificate*>(xCert.get()); + if (pAuthor && pCert) + return pCert->getSHA256Thumbprint() == pAuthor->getSHA256Thumbprint(); + return xCert->getSHA1Thumbprint() == xAuthor->getSHA1Thumbprint(); }); }