summaryrefslogtreecommitdiff
path: root/xmlsecurity
AgeCommit message (Collapse)Author
2024-10-02qa: use SetODFDefaultVersion everywhereXisco Fauli
Change-Id: I4a08abea9a6c61a0365d238abf1021806ae6df29 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/174375 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2024-10-02Add ODF 1.3 Extended / ODF 1.4 versions to configuration and UIXisco Fauli
The new default is ODF 1.4 Extended Change-Id: I50f60cccde81b5ea320478314482cc67a7bcc2e4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/174343 Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org> Tested-by: Jenkins
2024-09-30cool#9992 lok doc sign: convert the certificate chooser dialog to asyncMiklos Vajna
1) Move the try-catch around assing a signature inside the block that already got the response from the certificate chooser, it's unlikely that choosing the certificate (and not yet signing) would fail. 2) Convert the dialog to async and allow it to be a jsdialog. 3) Hide not relevant widgets for LOK: we have a single signing certificate, so the search entry is not useful. The refresh button has an unclear purpose, as it was initially added in commit fb9874231fb242b4a6a7d1ce097e66dd4ed8f32e (Caching Certificates in the CertificateChooser dialog session-wise, 2023-08-26), but later commit efe414c4a88fde0e2ee1d4016010f21fbd6d01d7 (Don't reuse CertificateChooser instances, 2024-02-07) disabled this chaching. In any case, the certificate won't change during the lifetime of a single LOK view, so hide that as well. 4) Invoke the inner certificate viewer in an async way, too. Change-Id: Ibf618ea7632cf801d1d9180b9aa7dd193c45ffda Reviewed-on: https://gerrit.libreoffice.org/c/core/+/174215 Reviewed-by: Miklos Vajna <vmiklos@collabora.com> Tested-by: Jenkins
2024-09-27cool#9992 lok doc sign: only take sign cert from the view in the cert chooserMiklos Vajna
Have two views, in case both of them haver sign certs configured in the NSS database, then the cert chooser would present both, which is not wanted. The problem is that the NSS database contains sign certs from all views, so working from the database is not what we want for the LOK case. Fix the problem by passing the SfxViewShell from the sign dialog to the certificate chooser dialog, and then the chooser can work from the view in LOK mode. Searching for other uses of getPersonalCertificates(), the comphelper/ one is not relevant for the LOK case (gpg is disabled there); the PDF case is only for the UNO API, so those don't necessarily need adjusting. Change-Id: Ic7027b8d218b2bde3c8bf134a4b11c14fd9c3570 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/174002 Reviewed-by: Miklos Vajna <vmiklos@collabora.com> Tested-by: Jenkins
2024-09-26cool#9992 lok doc sign: conditionally show the add button in the sign dialogMiklos Vajna
Open the sign dialog, the Add button is hidden, even if the LOK clients initializes the view with a working signing certificate. SfxMedium::SignContents_Impl() knows the correct view, but by the time the execution arrives to the DigitalSignaturesDialog ctor, this info is lost, so we don't know what is the current view. Fix the problem by looking up the view of the object shell at UNO command dispatch time, and passing that around, so the signature dialog can also access it. If the view has a signing certificate configured, then allow signing. The certificate chooser triggered by this button still needs fixing. Change-Id: I1fae63cea27ea1e68e938879f4507f53ade484f1 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/173964 Reviewed-by: Miklos Vajna <vmiklos@collabora.com> Tested-by: Jenkins
2024-09-25Fix typoAndrea Gelmini
Change-Id: Id1e54ad708501733282851b6538bc946119742b2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/173934 Tested-by: Julien Nabet <serval2412@yahoo.fr> Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2024-09-25cool#9992 lok doc sign: fix import of the private keyMiklos Vajna
Once the signing key is taken from the matching SfxViewShell (not yet done), signing with a certificate specified via initializeForRendering() failed with: warn:xmlsecurity.xmlsec:13020:13005:xmlsecurity/source/xmlsec/nss/x509certificate_nssimpl.cxx:330: X509Certificate_NssImpl::getPrivateKey() cannot find private key warn:xmlsecurity.xmlsec:13020:13005:xmlsecurity/source/xmlsec/nss/securityenvironment_nssimpl.cxx:812: Can't get the private key from the certificate. warn:xmlsecurity.xmlsec:13020:13005:xmlsecurity/source/xmlsec/errorcallback.cxx:53: keys.c:1347: xmlSecKeysMngrGetKey() '' '' 45 'details=NULL' warn:xmlsecurity.xmlsec:13020:13005:xmlsecurity/source/xmlsec/errorcallback.cxx:53: xmldsig.c:822: xmlSecDSigCtxProcessKeyInfoNode() '' '' 45 'details=NULL' warn:xmlsecurity.xmlsec:13020:13005:xmlsecurity/source/xmlsec/errorcallback.cxx:53: xmldsig.c:537: xmlSecDSigCtxProcessSignatureNode() '' 'xmlSecDSigCtxProcessKeyInfoNode' 1 ' ' warn:xmlsecurity.xmlsec:13020:13005:xmlsecurity/source/xmlsec/errorcallback.cxx:53: xmldsig.c:301: xmlSecDSigCtxSign() '' 'xmlSecDSigCtxProcessSignatureNode' 1 ' ' The trouble was that we wanted to keep the private key in-memory, presumably because initially the whole NSS database was in-memory for the LOK case. This was changed in commit 87eec1b90b6ecd83455f09168430c23f73c25c86 (NSS: create a temporary database instead of in-memory, 2018-12-31), so there is no problem with a not-in-memory private key anymore. Note that the problematic codepath was only triggered when first the certificate chooser was ran and only then we signed. So the testcase also gets the cert flags before signing, otherwise the test would succeed even without the fix. Change-Id: I5086b205c91b630ddd343c0eb91bd9e63b3ea238 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/173892 Reviewed-by: Miklos Vajna <vmiklos@collabora.com> Tested-by: Jenkins
2024-09-24Let test operate on temp copy of source documentStephan Bergmann
The CppunitTest_xmlsecurity_signing CPPUNIT_TEST_NAME=testImplicitScriptSign::TestBody introduced in e5a0209d4b1e1f09191a442e04d626b21c49b9df "cool#9992 lok doc sign: allow sign of macros & the document itself in one step" failed on a read-only source tree with > An uncaught UNO exception > - com.sun.star.ucb.InteractiveAugmentedIOException: {Message: "an error occurred during file opening (18/28) at /home/libo/src/core/ucbhelper/source/provider/cancelcommandexecution.cxx:83", Context: @0x7ff5cb43cf90, Classification: com.sun.star.task.InteractionClassification 0, Code: com.sun.star.ucb.IOErrorCode 1, Arguments: [com.sun.star.beans.PropertyValue: {Name: "Uri", Handle: -1, Value: string: "file:///home/libo/src/core//xmlsecurity/qa/unit/signing/data//macro.odt", State: com.sun.star.beans.PropertyState 0}, com.sun.star.beans.PropertyValue: {Name: "ResourceName", Handle: -1, Value: string: "/home/libo/src/core//xmlsecurity/qa/unit/signing/data//macro.odt", State: com.sun.star.beans.PropertyState 0}]} Change-Id: I9198ca1eba03d55e745a0bbb344963139941496f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/173852 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
2024-09-19cool#9992 lok doc sign: add password-less mode to create-certs.shMiklos Vajna
Now one can use './create-certs.sh RSA NOPASS' to create signing certs without encrypting them with a password. This is meant to be useful for the case when these certs have to be imported using the LOK API, and not interactively in Firefox, where one could ask for a password. Change-Id: I4cfc49ac8ff8c2420baa943b553a7a180a71e3bc Reviewed-on: https://gerrit.libreoffice.org/c/core/+/173651 Reviewed-by: Miklos Vajna <vmiklos@collabora.com> Tested-by: Jenkins
2024-09-18xmlsecurity: add unit test with docx that can only be opened with repairMichael Stahl
Change-Id: I4f705dd2124383a90b69d04d8b2de0e37f83a495 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170053 Tested-by: Michael Stahl <michael.stahl@allotropia.de> Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
2024-09-16cool#9992 lok doc sign: implement signature removalMiklos Vajna
Open an already signed document, click on the sign icon on the status bar, notice how the button to remove a signature is hidden. This was added in commit 71a8bad4b96627fd965b23288dea14aae3f0f468 (jsdialog: enable Digital Signatures dialog, 2022-01-24), which exposed the signatures dialog as a read-only jsdialog. The dialog was improved recently to be a read-write jsdialog, so this is no longer needed. But then DigitalSignaturesDialog::canRemove() had an inner non-async message dialog. Fix that by converting canRemove() to async. An additional problem could be that the document is not marked as modified, so the LOK client code doesn't notice the document is updated (to not have a signature), but we do update the last mod timestamp of the file, which is meant to be enough. Change-Id: I8e7ee22e4b1b8ce59dee3617bb2f22f8d734f31d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/173428 Reviewed-by: Miklos Vajna <vmiklos@collabora.com> Tested-by: Jenkins
2024-09-13[API CHANGE] XDocumentDigitalSignatures: remove deprecated / unused functionsMiklos Vajna
Some functions were already a stub and only aborted on calling them. The *Package* functions were added in commit c9ed2f359a9e899c3046c8151c831e24250fddbb (INTEGRATION: CWS xmlsec08 (1.4.24); FILE MERGED 2005/02/22 13:07:19 mt 1.4.24.1: #i36682# Accept separate Stream for signatures..., 2005-03-10), but it seems nobody called them. This also means that DocumentSignatureMode is now never set to DocumentSignatureMode::Package, so remove that as well. It seems to be unlikely that this non-published service was used by 3rd-party code, since it was specific to the needs of sfx2/ code, not generic functionality that could be useful in other contexts. Change-Id: Icfed9a0e6568f6eb21f9236901af01f1915bf2f8 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/173313 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2024-09-12cool#9992 lok doc sign: allow sign of macros & the document itself in one stepMiklos Vajna
Sign a document with macros (via file -> digital signatures -> digital signatures), realize that you still get a warning on file open, sign the macros in the document (via tools -> macros -> digital signature), realize that you did this in the wrong order, so now you have to re-sign the doc content. The reason for this is that the macro signature only signs the macro parts of the document (so you can still edit the document and the signature is valid, as long as you don't touch macros), while the doc content signature signs everything, including the macro signature, so the order of the two matters. Solve this trouble by adding a new setting that allows doing the two signatures in one step. Do this by extending the doc content signing code with an optional pre-step that first signs the document macros. This is a bit tricky to do, since xmlsecurity/ gets an RW signature stream and a RO document storage from sfx2/, but transferring one more signature stream can solve this trouble. Other tricky parts of the change: 1) The crypto signing is always done by libxmlsec, so DigitalSignaturesDialog::SetScriptingSignatureStream() has to update the storage of the sign manager's sign helper, otherwise, the hashes in the macro signature will be empty. 2) Signing reads the RO storage, so normally the macro signature would not be part of the doc signature when creating both signatures inside a single dialog. (The storage is only committed after the dialog ends.) Fix this problem by extending DocumentSignatureManager::add() and UriBindingHelper::OpenInputStream() to provide kind of an overlay when xmlsecurity/ gets a script signature stream: this way the macro signature will be part of the doc signature while the dialog is in progress. No overlay is needed later, once both streams are committed to the storage on dialog end. Change-Id: Ic2728689997165595991d5ec59c7a2683286e22d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/173263 Reviewed-by: Miklos Vajna <vmiklos@collabora.com> Tested-by: Jenkins
2024-09-11cool#9992 lok doc sign: async read-write DigitalSignaturesDialogMiklos Vajna
This finally allows removing the hack for the LOK case in SfxObjectShell::CheckIsReadonly() to show the signatures dialog read-only. Also fix a case while signing PDFs where the file stream was on the stack, but now that we finish signing in an async callback, signing crashed due to a use-after-free. Fix that by giving the std::unique_ptr to the utl::OStreamWrapper ctor, which knows to take over ownership in this case, and that wrapper is reference-counted. Next problem is that the add/remove buttons in the dialog are still hidden in the LOK case, that's not yet fixed here. Change-Id: I71ee50ae55d4e62f5d265a35e3810e3b2b63a9b9 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/173155 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2024-09-10cool#9992 lok doc sign: async DocumentDigitalSignatures::ImplViewSignatures()Miklos Vajna
Currently SfxObjectShell::CheckIsReadonly() has a hack for the LOK case to show the signatures dialog read-only, as only that is async. The next step is to make DocumentDigitalSignatures::ImplViewSignatures() async, though that requires all callers of the function to be async, so make DocumentDigitalSignatures::signScriptingContent() async as well. There is also DocumentDigitalSignatures::signPackage(), but turns out that's dead code, so just remove it. Once this is in place, we had a problem that the callbacks tried to interact with libxmlsec, but the dialog was still alive in DocumentDigitalSignatures::ImplViewSignatures() by the time the callback was running, so there were two DocumentSignatureManager instances at the same time, and both assumes it should call the global libxmlsec init/uninit, which resulted in failing to verify the just created signature. Fix this similar to how Tomaz fixed the same problem around pdfium in commit 067a8a954c8e1d8d6465a4ab5fb61e93f16c26c2 (pdfium: only init pdfium library one and destroy on LO exit, 2020-06-03). Change-Id: I3fb63c06195564732e1576dbd755157e676fb762 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/173117 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2024-09-09cool#9992 lok doc sign: async DocumentDigitalSignatures::signDocumentContent()Miklos Vajna
Currently SfxObjectShell::CheckIsReadonly() has a hack for the LOK case to show the signatures dialog read-only, as only that is async. The next step is to make DocumentDigitalSignatures::signDocumentContent() async, but passing an std::function via the UNO API is tricky. Notice how DocumentDigitalSignatures in xmlsecurity/ also implements sfx2::DigitalSignatures, add a new SignDocumentContentAsync() there and adapt all uses of signDocumentContent() to go with that instead. This requires introducing some lambdas for code after signDocumentContent() in general and for ODF/OOXML specific code in particular, to avoid code duplication. Change-Id: If771ced711041364988af45ad9dd0dd1a2a8660d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/173060 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2024-08-31cid#1607713 silence Overflowed constantCaolán McNamara
Change-Id: I0b3b924689685cfb7ae5cd64db5e3ef371541769 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/172700 Tested-by: Caolán McNamara <caolan.mcnamara@collabora.com> Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-08-15Fix the test failing when invalid certificate is in cert storeMike Kaganski
testPDFAddVisibleSignature was failing for me locally because of an expired certificate present in my store. Change-Id: I03243f6707b1b5ca94ea87e9f8c809dd47b6a93a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171901 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2024-08-15Use MacrosTest::IsValid to check certificatesMike Kaganski
Change-Id: I015fae42cf95ab7ff4f384b17f6ac4994d4c81ad Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171902 Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com> Tested-by: Jenkins
2024-08-13tdf#161909: show where the certs in the CertificateChooser are fromMoritz Duge
The NSS password dialog naming the Mozilla profile only shows up for X.509 certs outside Windows. And the user may wrongly assume GPG keys are from Thunderbird. Change-Id: I23706309d57fe30cddcbcac16d7f3e20ee397f16 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171645 Tested-by: Jenkins Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
2024-08-13tdf#161909: show NSS cert DB path (MOZ profile) in password dialogMoritz Duge
When selecting a X.509 cert on Unix/Linux/macOS. (ODF+PDF signing) Helps the user to know which password is requested. Previously only asked for the "NSS Certificate DB" password. Change-Id: Ic44d3c4b2f98185c07b11f9880d64016aa0b60ca Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171641 Tested-by: Jenkins Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
2024-08-13tdf#161909: make showing GPG keys only an explicit functionalityMoritz Duge
Before this change, selecting only GPG keys for ODF encrpytion relied on the fact, that all X.509 implementations (nss+mscrypt) implement listing public keys (getAllCertificates) as a stub. See previous change Ia6b8ecb9 Change-Id: Icb36a4cefd60b94407129ff73fe62f9250bfbee5 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171639 Tested-by: Jenkins Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
2024-08-13tdf#161909: request GPG keys exclusively for chooseCertificatesImplMoritz Duge
For ODF encryption, only GPG keys are allowed. And key selection for this currently only works correctly, because all X.509 implementations (nss and mscrypt) yield empty results when asked for public keys (encryption). This commit is a first step to make the selection for GPG keys explicit. Other code still needs to be changed to make use of this new function argument. Change-Id: Ia6b8ecb901c0f54a9a58b1bd0efaa7154ffbd285 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171638 Tested-by: Jenkins Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
2024-08-08tdf#161909: Show key type in CertificateViewer.Moritz Duge
Change-Id: I4277e342c573525dd668d0365b1d686fe33fd914 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171500 Reviewed-by: Moritz Duge <moritz.duge@allotropia.de> Reviewed-by: Sarper Akdemir <sarper.akdemir@allotropia.de> Tested-by: Jenkins
2024-08-06tdf#133941 tdf#161909: Label the "Certificate Manager" with "GPG".Moritz Duge
Change-Id: I74a7349ece014f7bf26dd8d75723751b344f1b87 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171499 Reviewed-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com> Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de> Tested-by: Jenkins
2024-08-05Fix typoAndrea Gelmini
Change-Id: I5cef95873cd6a67ba2994dcb6c2c8ed231c0b2ca Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171494 Reviewed-by: Julien Nabet <serval2412@yahoo.fr> Tested-by: Julien Nabet <serval2412@yahoo.fr>
2024-08-05tdf#159040 tdf#162206: better the user key selection and test sign with defaultSarper Akdemir
fix GPG CertificateImpl::getSHA1Thumbprint not returning a sequence of bytes as the thumbprint. (that is what the documented API states, and what all of the code assumed.) now /org.openoffice.UserProfile/Data/signingkey and encryptionkey stores the key's SHA1Thumbprint for better identification of keys. Previously on the key name was being used. fix annoying NSS Certificate Database password prompt appearing on Tools->Options if the certificate database is password protected. improve Tools->Options->UserData user key selection and display of information. add a ui test for "Sign with default certificate" interaction in the save dialog. Change-Id: I1036856003f58f494838e0f81ca0fe18e821f528 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171395 Tested-by: Jenkins Reviewed-by: Sarper Akdemir <sarper.akdemir@allotropia.de>
2024-08-04cid#1556583 COPY_INSTEAD_OF_MOVECaolán McNamara
and cid#1556585 COPY_INSTEAD_OF_MOVE cid#1556588 COPY_INSTEAD_OF_MOVE cid#1556593 COPY_INSTEAD_OF_MOVE cid#1556597 COPY_INSTEAD_OF_MOVE cid#1556605 COPY_INSTEAD_OF_MOVE cid#1556617 COPY_INSTEAD_OF_MOVE cid#1556635 COPY_INSTEAD_OF_MOVE cid#1556790 COPY_INSTEAD_OF_MOVE cid#1556792 COPY_INSTEAD_OF_MOVE cid#1556796 COPY_INSTEAD_OF_MOVE cid#1556799 COPY_INSTEAD_OF_MOVE cid#1556815 COPY_INSTEAD_OF_MOVE cid#1556836 COPY_INSTEAD_OF_MOVE cid#1556840 COPY_INSTEAD_OF_MOVE cid#1556842 COPY_INSTEAD_OF_MOVE cid#1556859 COPY_INSTEAD_OF_MOVE cid#1556860 COPY_INSTEAD_OF_MOVE cid#1556866 COPY_INSTEAD_OF_MOVE cid#1556869 COPY_INSTEAD_OF_MOVE cid#1556870 COPY_INSTEAD_OF_MOVE Change-Id: I3df8698a4aecbb03999c084517e37e12ff46ee97 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171435 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-08-01pyuno,unotest,xmlsecurity: copy GPG test files for UITtestMichael Stahl
The problem was that running UITest_xmlsecurity_gpg changed the files in test/signing-keys/ ... prevent that by copying the directory in that test, which is more complicated than initially expected. Change-Id: Ie3be922e0b2e9dae49f9a70e35ad5270c90b4fc4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171322 Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de> Reviewed-by: Michael Stahl <michael.stahl@allotropia.de> Tested-by: Jenkins
2024-07-29testtools, wizards, xmlsecurity: fix issues found by Ruff linterIlmari Lauhakangas
Change-Id: I03edbaa7c9a643ca7503fa0e93c2bf0de3ac4e51 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171211 Tested-by: Ilmari Lauhakangas <ilmari.lauhakangas@libreoffice.org> Tested-by: Jenkins Reviewed-by: Ilmari Lauhakangas <ilmari.lauhakangas@libreoffice.org>
2024-07-29Consistently name UITest targetsStephan Bergmann
Change-Id: Ibdf28a56f66f9513a3d4abb25cea8176e47da941 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171174 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
2024-07-25CppunitTest_xmlsecurity_signing: simplify a bitXisco Fauli
Change-Id: I197e37f6520644c594baa6936d831ea456d60f69 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171051 Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org> Tested-by: Jenkins
2024-07-25tdf#161909: Fix resize for cert listings (GtkBox instead of GtkGrid)Moritz Duge
- "Certificate Path" dialog (select Mozilla profile for NSS) - resizing broken since commit db9e1ef04d13ecc1b8f8f156b059173143ea03ea - also increased default width to account for long filesystem paths - "Digital Signatures" dialog - "Select Certificate" dialog - resizable=True is the default (Glade removes explicit defaults) - Make long translations wrap instead of being cut. Glade set expand=False and fill=True as defaults inside GtkBox. Change-Id: I2d7719e83e5162d06d30e25b3e307fa23e0d605e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170694 Tested-by: Jenkins Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
2024-07-25tdf#161909: Fix resizing and behavior for "View Certificate" dialog.Moritz Duge
- Set appropriate larger default size. - Disable editing of details area. - Add comments to distinguish GPG and X.509 code. Change-Id: Idcca012c1eef96c6daa78498e85da6f70c97a90f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170004 Tested-by: Jenkins Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
2024-07-18make date/time single-arg constructors explicitNoel Grandin
Change-Id: I943f755d95b90ef8aeb7d5b339f617ff50db4e29 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170673 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2024-07-17xmlsecurity: Add UItest (save GPG encrypted ODF)Moritz Duge
Change-Id: I09dd13334e0d3da5f6004312bae69b5c77120434 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167904 Tested-by: Jenkins Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
2024-07-15tdf#161871 Revert "Removed Type and Usage Columns from Certificate Chooser"Samuel Mehrbrodt
The commit broke the display of all columns except the first one in all backends except gtk3. Also it's not clear why those columns are deemed superfluous; see discussion in tdf#161871 This reverts commit 9f327102c435887bbae650b3a573f44500b6f534. Change-Id: Idc3496122137f98c23bb7df8e36b17281fc948d3 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170491 Tested-by: Jenkins Reviewed-by: Samuel Mehrbrodt <samuel.mehrbrodt@allotropia.de>
2024-07-15tdf#108828 Prevent leaking keys from previous signing sessionsSamuel Mehrbrodt
Usuccessful signing sessions (e.g. abort when password is requested) left their key in the context. On the next try, the former key would also be used to sign. Change-Id: I55b9201df229cae40863a0a19b238029607d1848 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170388 Reviewed-by: Samuel Mehrbrodt <samuel.mehrbrodt@allotropia.de> Tested-by: Jenkins
2024-07-14cid#1608236 COPY_INSTEAD_OF_MOVECaolán McNamara
Change-Id: I3f46c1d7e68dbf79ddbc9dc50d2735ebe1727b14 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170445 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-07-11tdf#108828 Show certificate selector again after cancelling password dialogSamuel Mehrbrodt
Change-Id: I0a57204c1885ca300d22832e5469d8918aec9ba6 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170384 Tested-by: Jenkins Reviewed-by: Samuel Mehrbrodt <samuel.mehrbrodt@allotropia.de>
2024-07-02BootstrapFixture: get rid of mxComponentContextXisco Fauli
Change-Id: I0318485c3c0159277e47096e0c7e0df8ed109ea4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169865 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2024-06-30Resave with newer Glade versionBogdan Buzea
Change-Id: Ia6374adeb4ef15f6d3d0d3bca365b269562bb640 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169597 Tested-by: Jenkins Reviewed-by: Taichi Haradaguchi <20001722@ymail.ne.jp>
2024-05-23tdf#145538 Use range based for loopsU-AMANDAQUARESMA\quare
Change-Id: Ib672cd1968de7bb99cd5f8737a09ce02b0490bf8 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167995 Tested-by: Jenkins Tested-by: Ilmari Lauhakangas <ilmari.lauhakangas@libreoffice.org> Reviewed-by: Ilmari Lauhakangas <ilmari.lauhakangas@libreoffice.org>
2024-05-16WaE: C6011 Dereferencing NULL pointer warningsCaolán McNamara
Change-Id: I710ff75d387b2d452cb80911c9f0092948453ef8 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167751 Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com> Tested-by: Jenkins
2024-05-15loplugin:ostr in xmlsecurityNoel Grandin
Change-Id: Ifb936c230f68447b3bb5993705adb5e5b790371f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167668 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Jenkins
2024-05-12WaE: C6011 Dereferencing NULL pointer warningsCaolán McNamara
Change-Id: I19824cd8fdc3ac5b5afb4e769527bf71513212fc Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167553 Tested-by: Caolán McNamara <caolan.mcnamara@collabora.com> Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-05-09WaE: C6011 Dereferencing NULL pointer warningsCaolán McNamara
Change-Id: I6ef2f39cca9e657a05b9b55d8ff87607261dd1ea Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167369 Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com> Tested-by: Jenkins
2024-05-08drop requirement for rtl_random_getBytes to have "Pool" argCaolán McNamara
Seeing as since: commit e9531b792ddf0cfc2db11713b574c5fc7ae09e2c Date: Tue Feb 6 14:39:47 2024 +0100 sal: rtlRandomPool: require OS random device, abort if not present Both rtl_random_createPool() and rtl_random_getBytes() first try to get random data from the OS, via /dev/urandom or rand_s() (documented to call RtlGenRandom(), see [1]). we don't use the initial arg to rtl_random_getBytes anymore, drop the requirement to have one. Then simplify our usages of that, and addtionally deprecate rtl_random_createPool and rtl_random_destroyPool. Change-Id: I13dcc067714a8a741a4e8f2bfcf2006373f832c4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167067 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-05-06makefile simplification: replace $(call gb_UnpackedTarball_get_dir,foo)Christian Lohmaier
…by a simple/static $(gb_UnpackedTarball_workdir)/foo see also 0c4c84a14b01c71c76a9c45a7f26aec4d64f3e4f Change-Id: I8e6aa55c85534c4446556548910c950ddbe7c6fc Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167163 Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com> Tested-by: Jenkins
2024-05-04WaE: C6011 Dereferencing NULL pointer warningsCaolán McNamara
Change-Id: I68acd56b28b0f989a4010cd939f2452970d158ff Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167103 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>