office-gobmx/officecfg
Miklos Vajna e5a0209d4b cool#9992 lok doc sign: allow sign of macros & the document itself in one step
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-12 16:53:06 +02:00
..
qa
registry cool#9992 lok doc sign: allow sign of macros & the document itself in one step 2024-09-12 16:53:06 +02:00
util tdf#157431 Show description for expert config items 2023-11-09 08:14:38 +01:00
Configuration_officecfg.mk Emscripten: Filter out some configuration 2024-02-23 20:58:56 +01:00
CppunitTest_officecfg_cppheader_test.mk
CustomTarget_registry.mk makefile simplification: replace $(call gb_CustomTarget_get_workdir,foo) 2024-05-03 16:06:14 +02:00
files.mk [API CHANGE] Drop deprecated org/openoffice/ucb/InteractionHandler.xcs file 2023-06-29 18:58:53 +02:00
Makefile
Module_officecfg.mk
Package_misc.mk
README.md

Default Settings for LibreOffice

The schema and default settings for the LibreOffice configuration database.

If you change a file in this module, then a make postprocess is needed after make officecfg.

See also: configmgr

AcceleratorKeyChecker.fodt in the util folder is a tool written in Basic that check menus for entries that use the same accelerator key. The tool goes through the menus using the accessibility api and checks the accelerator keys. For information on how to use the tool open the fodt file in LibreOffice.

For more details about the file format, see https://www.openoffice.org/projects/util/common/configuration/oor-document-format.html (also mirrored at https://web.archive.org/web/20101103025920/http://util.openoffice.org/common/configuration/oor-document-format.html).