external: update libxmlsec to 1.2.32

And drop the 2 upstreamed patches.

Change-Id: Ia821023d9cc06df5e9e7aef82c070ad1c98b67e4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/114894
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
This commit is contained in:
Miklos Vajna
2021-04-29 20:56:56 +02:00
parent c112868f6c
commit b5586bd42a
5 changed files with 5 additions and 100 deletions

View File

@@ -164,8 +164,8 @@ export LIBNUMBERTEXT_SHA256SUM := 17b8249cb89ae11ae15a85612d2665626c0e0e3e56b356
export LIBNUMBERTEXT_TARBALL := libnumbertext-1.0.7.tar.xz
export LIBTOMMATH_SHA256SUM := 083daa92d8ee6f4af96a6143b12d7fc8fe1a547e14f862304f7281f8f7347483
export LIBTOMMATH_TARBALL := ltm-1.0.zip
export XMLSEC_SHA256SUM := 9b10bc52cc31e4f76162e3975e50db26b71ab49c571d810b311ca626be5a0b26
export XMLSEC_TARBALL := xmlsec1-1.2.31.tar.gz
export XMLSEC_SHA256SUM := e383702853236004e5b08e424b8afe9b53fe9f31aaa7a5382f39d9533eb7c043
export XMLSEC_TARBALL := xmlsec1-1.2.32.tar.gz
export LIBXML_SHA256SUM := aafee193ffb8fe0c82d4afef6ef91972cbaf5feea100edc2f262750611b4be1f
export LIBXML_VERSION_MICRO := 10
export LIBXML_TARBALL := libxml2-2.9.$(LIBXML_VERSION_MICRO).tar.gz

View File

@@ -1,68 +0,0 @@
From a39b110cb2c25680259a38b2f397b350151bc6e7 Mon Sep 17 00:00:00 2001
From: Michael Stahl <michael.stahl@allotropia.de>
Date: Wed, 7 Apr 2021 16:43:48 +0200
Subject: [PATCH] xmlSecX509DataGetNodeContent(): don't return 0 for non-empty
elements
LibreOffice wants to write the content of KeyInfo itself and thus writes
X509Certificate element with content.
But then xmlSecMSCngKeyDataX509XmlWrite() writes a duplicate
X509Certificate element, which then makes a new additional consistency
check in LO unhappy.
The duplicate is written because xmlSecX509DataGetNodeContent() returns
0 because it only checks for empty nodes; if there are only non-empty
nodes a fallback to XMLSEC_X509DATA_DEFAULT occurs in all backends.
Change the return value to be non-0 without changing the signature of
the function, as it is apparently public.
This doesn't happen in LO in the NSS backend due to another accident,
where the private key flag isn't set when the X509Certificate is read,
but otherwise the code is the same.
---
src/x509.c | 11 +++++++++++
1 file changed, 11 insertions(+)
diff --git a/src/x509.c b/src/x509.c
index ed8788ae..dac8bd2b 100644
--- a/src/x509.c
+++ b/src/x509.c
@@ -60,22 +60,33 @@ xmlSecX509DataGetNodeContent (xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx) {
if(xmlSecCheckNodeName(cur, xmlSecNodeX509Certificate, xmlSecDSigNs)) {
if(xmlSecIsEmptyNode(cur) == 1) {
content |= XMLSEC_X509DATA_CERTIFICATE_NODE;
+ } else {
+ /* ensure return value isn't 0 if there are non-empty elements */
+ content |= (XMLSEC_X509DATA_CERTIFICATE_NODE << 16);
}
} else if(xmlSecCheckNodeName(cur, xmlSecNodeX509SubjectName, xmlSecDSigNs)) {
if(xmlSecIsEmptyNode(cur) == 1) {
content |= XMLSEC_X509DATA_SUBJECTNAME_NODE;
+ } else {
+ content |= (XMLSEC_X509DATA_SUBJECTNAME_NODE << 16);
}
} else if(xmlSecCheckNodeName(cur, xmlSecNodeX509IssuerSerial, xmlSecDSigNs)) {
if(xmlSecIsEmptyNode(cur) == 1) {
content |= XMLSEC_X509DATA_ISSUERSERIAL_NODE;
+ } else {
+ content |= (XMLSEC_X509DATA_ISSUERSERIAL_NODE << 16);
}
} else if(xmlSecCheckNodeName(cur, xmlSecNodeX509SKI, xmlSecDSigNs)) {
if(xmlSecIsEmptyNode(cur) == 1) {
content |= XMLSEC_X509DATA_SKI_NODE;
+ } else {
+ content |= (XMLSEC_X509DATA_SKI_NODE << 16);
}
} else if(xmlSecCheckNodeName(cur, xmlSecNodeX509CRL, xmlSecDSigNs)) {
if(xmlSecIsEmptyNode(cur) == 1) {
content |= XMLSEC_X509DATA_CRL_NODE;
+ } else {
+ content |= (XMLSEC_X509DATA_CRL_NODE << 16);
}
} else {
/* todo: fail on unknown child node? */
--
2.30.2

View File

@@ -8,8 +8,6 @@
#
xmlsec_patches :=
xmlsec_patches += windows7.patch.1
xmlsec_patches += 0001-xmlSecX509DataGetNodeContent-don-t-return-0-for-non-.patch.1
$(eval $(call gb_UnpackedTarball_UnpackedTarball,xmlsec))

View File

@@ -1,25 +0,0 @@
From 21bbcb04b62352331a15a0b8463ebb27a9b858bc Mon Sep 17 00:00:00 2001
From: Aleksey Sanin <aleksey@aleksey.com>
Date: Thu, 12 Nov 2020 11:17:01 -0800
Subject: [PATCH] Fix DLL loading on windows
---
src/dl.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/dl.c b/src/dl.c
index e934fe4e..a511df43 100644
--- a/src/dl.c
+++ b/src/dl.c
@@ -148,7 +148,7 @@ xmlSecCryptoDLLibraryCreate(const xmlChar* name) {
#endif /* XMLSEC_DL_LIBLTDL */
#ifdef XMLSEC_DL_WIN32
-#if !defined(WINAPI_FAMILY) || (WINAPI_FAMILY != WINAPI_FAMILY_DESKTOP_APP)
+#if !defined(WINAPI_FAMILY) || (WINAPI_FAMILY == WINAPI_FAMILY_DESKTOP_APP)
lib->handle = LoadLibraryA((char*)lib->filename);
#else
LPWSTR wcLibFilename = xmlSecWin32ConvertUtf8ToUnicode(lib->filename);
--
2.25.1

View File

@@ -87,10 +87,10 @@
"dest-filename": "external/tarballs/0168229624cfac409e766913506961a8-ucpp-1.3.2.tar.gz"
},
{
"url": "https://dev-www.libreoffice.org/src/xmlsec1-1.2.31.tar.gz",
"sha256": "9b10bc52cc31e4f76162e3975e50db26b71ab49c571d810b311ca626be5a0b26",
"url": "https://dev-www.libreoffice.org/src/xmlsec1-1.2.32.tar.gz",
"sha256": "e383702853236004e5b08e424b8afe9b53fe9f31aaa7a5382f39d9533eb7c043",
"type": "file",
"dest-filename": "external/tarballs/xmlsec1-1.2.31.tar.gz"
"dest-filename": "external/tarballs/xmlsec1-1.2.32.tar.gz"
},
{
"url": "https://dev-www.libreoffice.org/src/368f114c078f94214a308a74c7e991bc-crosextrafonts-20130214.tar.gz",