LibreOffice Module xmlsecurity (master) 1
Functions | Variables
xmlsignaturehelper.cxx File Reference
#include <xmlsignaturehelper.hxx>
#include <documentsignaturehelper.hxx>
#include <xsecctl.hxx>
#include <biginteger.hxx>
#include <UriBindingHelper.hxx>
#include <tools/datetime.hxx>
#include <com/sun/star/io/XOutputStream.hpp>
#include <com/sun/star/io/XInputStream.hpp>
#include <com/sun/star/io/XTruncate.hpp>
#include <com/sun/star/beans/XPropertySet.hpp>
#include <com/sun/star/beans/StringPair.hpp>
#include <com/sun/star/xml/sax/Parser.hpp>
#include <com/sun/star/xml/sax/Writer.hpp>
#include <com/sun/star/embed/ElementModes.hpp>
#include <com/sun/star/embed/XStorage.hpp>
#include <com/sun/star/embed/StorageFormats.hpp>
#include <com/sun/star/embed/XTransactedObject.hpp>
#include <comphelper/attributelist.hxx>
#include <comphelper/ofopxmlhelper.hxx>
#include <comphelper/sequence.hxx>
#include <comphelper/diagnose_ex.hxx>
#include <rtl/ustrbuf.hxx>
#include <sal/log.hxx>
#include <optional>
Include dependency graph for xmlsignaturehelper.cxx:

Go to the source code of this file.

Functions

static auto CheckX509Data (uno::Reference< xml::crypto::XSecurityEnvironment > const &xSecEnv, std::vector< SignatureInformation::X509CertInfo > const &rX509CertInfos, std::vector< uno::Reference< security::XCertificate > > &rCerts, std::vector< SignatureInformation::X509CertInfo > &rSorted) -> bool
 check this constraint from xmldsig-core 4.5.4: More...
 

Variables

constexpr OUStringLiteral NS_DOCUMENTSIGNATURES = u"http://openoffice.org/2004/documentsignatures"
 
constexpr OUStringLiteral NS_DOCUMENTSIGNATURES_ODF_1_2 = u"urn:oasis:names:tc:opendocument:xmlns:digitalsignature:1.0"
 
constexpr OUStringLiteral OOXML_SIGNATURE_ORIGIN = u"http://schemas.openxmlformats.org/package/2006/relationships/digital-signature/origin"
 
constexpr OUStringLiteral OOXML_SIGNATURE_SIGNATURE = u"http://schemas.openxmlformats.org/package/2006/relationships/digital-signature/signature"
 

Function Documentation

◆ CheckX509Data()

static auto CheckX509Data ( uno::Reference< xml::crypto::XSecurityEnvironment > const &  xSecEnv,
std::vector< SignatureInformation::X509CertInfo > const &  rX509CertInfos,
std::vector< uno::Reference< security::XCertificate > > &  rCerts,
std::vector< SignatureInformation::X509CertInfo > &  rSorted 
) -> bool
static

check this constraint from xmldsig-core 4.5.4:

All certificates appearing in an X509Data element MUST relate to the validation key by either containing it or being part of a certification chain that terminates in a certificate containing the validation key.

Definition at line 561 of file xmlsignaturehelper.cxx.

References xmlsecurity::EqualDistinguishedNames(), i, xmlsecurity::NOCOMPAT, xmlsecurity::numericStringToBigInteger(), SAL_WARN, and start.

Referenced by XMLSignatureHelper::CheckAndUpdateSignatureInformation().

Variable Documentation

◆ NS_DOCUMENTSIGNATURES

constexpr OUStringLiteral NS_DOCUMENTSIGNATURES = u"http://openoffice.org/2004/documentsignatures"
constexpr

◆ NS_DOCUMENTSIGNATURES_ODF_1_2

constexpr OUStringLiteral NS_DOCUMENTSIGNATURES_ODF_1_2 = u"urn:oasis:names:tc:opendocument:xmlns:digitalsignature:1.0"
constexpr

◆ OOXML_SIGNATURE_ORIGIN

constexpr OUStringLiteral OOXML_SIGNATURE_ORIGIN = u"http://schemas.openxmlformats.org/package/2006/relationships/digital-signature/origin"
constexpr

Definition at line 53 of file xmlsignaturehelper.cxx.

Referenced by XMLSignatureHelper::EnsureSignaturesRelation().

◆ OOXML_SIGNATURE_SIGNATURE

constexpr OUStringLiteral OOXML_SIGNATURE_SIGNATURE = u"http://schemas.openxmlformats.org/package/2006/relationships/digital-signature/signature"
constexpr

Definition at line 54 of file xmlsignaturehelper.cxx.

Referenced by XMLSignatureHelper::ExportSignatureRelations().