diff options
author | Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de> | 2018-05-16 16:34:35 +0200 |
---|---|---|
committer | Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de> | 2018-05-18 14:45:19 +0200 |
commit | 201321f648e82ecc610e7a3324a46248a19c1704 (patch) | |
tree | 3905f8cf6f47b32e21c69afa34bccd98cd9676ba /xmlsecurity/source/helper/xsecctl.cxx | |
parent | 168034416c9477ee5ae1d3c6f899451e28d42851 (diff) |
tdf#83877 Write SignatureLineId to ODF & OOXML signatures
Change-Id: I483a3b7895cdcb10ef9d6dacf167ed0f8db7e723
Reviewed-on: https://gerrit.libreoffice.org/54432
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
Diffstat (limited to 'xmlsecurity/source/helper/xsecctl.cxx')
-rw-r--r-- | xmlsecurity/source/helper/xsecctl.cxx | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/xmlsecurity/source/helper/xsecctl.cxx b/xmlsecurity/source/helper/xsecctl.cxx index c10e9f0d3c50..0d97dd3456fb 100644 --- a/xmlsecurity/source/helper/xsecctl.cxx +++ b/xmlsecurity/source/helper/xsecctl.cxx @@ -856,6 +856,28 @@ void XSecController::exportSignature( "dc:date"); } xDocumentHandler->endElement( "SignatureProperty" ); + + if (!signatureInfo.ouSignatureLineId.isEmpty()) + { + pAttributeList = new SvXMLAttributeList(); + pAttributeList->AddAttribute( + "xmlns:loext", + "urn:org:documentfoundation:names:experimental:office:xmlns:loext:1.0"); + pAttributeList->AddAttribute("Target", "#" + signatureInfo.ouSignatureId); + + xDocumentHandler->startElement( + "SignatureProperty", + cssu::Reference<cssxs::XAttributeList>(pAttributeList)); + { + // Write SignatureLineId element + xDocumentHandler->startElement( + "loext:SignatureLineId", + cssu::Reference<cssxs::XAttributeList>(new SvXMLAttributeList())); + xDocumentHandler->characters(signatureInfo.ouSignatureLineId); + xDocumentHandler->endElement("loext:SignatureLineId"); + } + xDocumentHandler->endElement("SignatureProperty"); + } } // Write signature description. |