summaryrefslogtreecommitdiff
path: root/dev-libs/libwbxml
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2022-03-20 00:40:44 +0000
committerV3n3RiX <venerix@koprulu.sector>2022-03-20 00:40:44 +0000
commit4cbcc855382a06088e2f016f62cafdbcb7e40665 (patch)
tree356496503d52354aa6d9f2d36126302fed5f3a73 /dev-libs/libwbxml
parentfcc5224904648a8e6eb528d7603154160a20022f (diff)
gentoo resync : 20.03.2022
Diffstat (limited to 'dev-libs/libwbxml')
-rw-r--r--dev-libs/libwbxml/Manifest4
-rw-r--r--dev-libs/libwbxml/files/libwbxml-0.11.7-expat-compat-fixes.patch116
-rw-r--r--dev-libs/libwbxml/libwbxml-0.11.7-r1.ebuild37
-rw-r--r--dev-libs/libwbxml/libwbxml-0.11.8.ebuild33
4 files changed, 190 insertions, 0 deletions
diff --git a/dev-libs/libwbxml/Manifest b/dev-libs/libwbxml/Manifest
index 50c5ad1ddbcc..e7c213f5de89 100644
--- a/dev-libs/libwbxml/Manifest
+++ b/dev-libs/libwbxml/Manifest
@@ -1,3 +1,7 @@
+AUX libwbxml-0.11.7-expat-compat-fixes.patch 5005 BLAKE2B 705cd2068fc95536a8ed329de2e77cacb044b01273689c110d78f9a6500914961e4f7f23da05a18fb3743c89ad78f7f2ab618c8b187e4280d18dd10c0d71f102 SHA512 e2ca3c5134bfe4800489ba215c443f85ff85612db45da6896c3d6bed6b493eefc4b904b3b9a3b8fa8a6b2ab8f5c294866512dd064ac315ebc689756882a4395f
DIST libwbxml-0.11.7.tar.gz 427429 BLAKE2B 1ec456032d4d343f5b11c60dfe5fa5dfb8750c87f1e05c48b1671257822ce7ec121a7006ed9749aacd84d4ce9f5dfa0c358cf3f3581a4a24a34db1c91338f74a SHA512 fc855650661593596a158527682d2c40d800c1fa44169d79e9ca9c6d64d67b6c660807ed89b1bddd644f114c27711356627ac919af91fd7f19d409879505512f
+DIST libwbxml-0.11.8.tar.gz 362833 BLAKE2B 8501a578c1937097a7f0993baf0bed1d645d14441fca149142a8d338f9b6aece7f726576d9170dfc298388c66937d8a6549d52ed75305cab2c427c82b1331dfd SHA512 14b74e3d25f21ce4bf05f4ed546087817c698b5a44190c569b7691e26510b117118bf828e15beccaa4bdd2e744c45f9b5695b38eb7994f3af0f4f81f90ecff69
+EBUILD libwbxml-0.11.7-r1.ebuild 761 BLAKE2B 7622ce155b8348dea4c9a6d607637476ffe54dbfcab1b9888714b2941e4ebc2ef7cf496c5da9c84657bf1b5b7e03ea8aa8f56d810ca396ea352575015409e919 SHA512 d8f03a241a8c461a1babe616c4c405c3be14015cf82ec9b0ec16d74451477f5f6bdee2b2e8afd2f6f2da75268859d13a749c3599e1db4c7eaa2f0715304d7190
EBUILD libwbxml-0.11.7.ebuild 700 BLAKE2B 9798f8f3aa8461d32f86089d9ef4cc059ce393b65afd31d77bc984d0538d960c35a8f9c42fe5418850d35ffff0782fcc20b1e2a905d92cc307f8936cd789d2aa SHA512 dfa8c1f81e264b465015631865bd23b38237dcbbfae252d21fc776b6826770dd841af503717d0a8f559099e42bcb5ef861010ac09f04be855639204d21f12e41
+EBUILD libwbxml-0.11.8.ebuild 703 BLAKE2B a501bdabe2911fad1552fab29d2926650f426ac254c68106eb45455d3eaa5b23c16bbdcc9a4878a09e751b8369efe08d00d48ea93b0fa6773b0136999151a4ba SHA512 b1ce25f7fa5a4ef9d5bb56f0a074abef22c228879f1b55e7ba28170222276b71358bbbae20efca2301da0df792c960d6f653f7551c1b27c3222114e2931c0998
MISC metadata.xml 393 BLAKE2B 270d88949c326fa1d283b9e7e9a168dc5fce083a2545c6933efc9792e407ecc1742dc73a06ae8d071c14b9816487f6d7690e4c5ffde6fc0e00042d1442d8dd89 SHA512 6a5daed5693df3ac31def8d5e1f909bcdd65b8aa459c9cb3dab6659f652ed510fed64fc815a048447a5bbeeaedcda5942a44d74b3232e01344f80ec50d53285f
diff --git a/dev-libs/libwbxml/files/libwbxml-0.11.7-expat-compat-fixes.patch b/dev-libs/libwbxml/files/libwbxml-0.11.7-expat-compat-fixes.patch
new file mode 100644
index 000000000000..00479c7f6437
--- /dev/null
+++ b/dev-libs/libwbxml/files/libwbxml-0.11.7-expat-compat-fixes.patch
@@ -0,0 +1,116 @@
+https://github.com/libwbxml/libwbxml/commit/4664d476fb5029073012b91880ce2a9bbc0b4725
+https://github.com/libwbxml/libwbxml/commit/4425e80f74b93a590b2c99638b9c5095e6a66244
+
+From: =?UTF-8?q?Sl=C3=A1vek=20Banko?= <slavek.banko@axis.cz>
+Date: Thu, 24 Feb 2022 20:30:18 +0100
+Subject: [PATCH] Allow the use of a namespace separator specified by the
+ constant instead of hardcoded colon in the SyncML related code.
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Signed-off-by: Slávek Banko <slavek.banko@axis.cz>
+--- a/src/wbxml_internals.h
++++ b/src/wbxml_internals.h
+@@ -156,7 +156,9 @@ typedef enum WBXMLWVDataType_e {
+ #pragma warning(error: 4761) /**< integral size mismatch in argument : conversion supplied */
+ #endif /* WIN32 */
+
+-#define WBXML_NAMESPACE_SEPARATOR ':'
++/* Separator must be the same in both cases - once as a char, once as a string */
++#define WBXML_NAMESPACE_SEPARATOR ':'
++#define WBXML_NAMESPACE_SEPARATOR_STR ":"
+
+ /** @} */
+
+--- a/src/wbxml_tree_clb_xml.c
++++ b/src/wbxml_tree_clb_xml.c
+@@ -33,6 +33,7 @@
+ * @brief WBXML Tree Callbacks for XML Parser (Expat)
+ */
+
++#include "wbxml_internals.h"
+ #include "wbxml_config_internals.h"
+
+ #if defined( HAVE_EXPAT )
+@@ -160,8 +161,8 @@ void wbxml_tree_clb_xml_start_element(void *ctx,
+ * potentially embedded documents.
+ */
+ if ((
+- (WBXML_STRCMP(localName, "syncml:devinf:DevInf") == 0) ||
+- (WBXML_STRCMP(localName, "syncml:dmddf1.2:MgmtTree") == 0)
++ (WBXML_STRCMP(localName, "syncml:devinf" WBXML_NAMESPACE_SEPARATOR_STR "DevInf") == 0) ||
++ (WBXML_STRCMP(localName, "syncml:dmddf1.2" WBXML_NAMESPACE_SEPARATOR_STR "MgmtTree") == 0)
+ )&&
+ (tree_ctx->current != NULL))
+ {
+@@ -255,8 +256,8 @@ void wbxml_tree_clb_xml_end_element(void *ctx,
+ /* End of skipped node */
+
+ #if defined( WBXML_SUPPORT_SYNCML )
+- if (WBXML_STRCMP(localName, "syncml:devinf:DevInf") == 0 ||
+- WBXML_STRCMP(localName, "syncml:dmddf1.2:MgmtTree") == 0) {
++ if (WBXML_STRCMP(localName, "syncml:devinf" WBXML_NAMESPACE_SEPARATOR_STR "DevInf") == 0 ||
++ WBXML_STRCMP(localName, "syncml:dmddf1.2" WBXML_NAMESPACE_SEPARATOR_STR "MgmtTree") == 0) {
+ /* definitions first ... or some compilers don't like it */
+ WBXMLBuffer *embed_doc = NULL;
+ WBXMLTree *tree = NULL;
+@@ -277,10 +278,10 @@ void wbxml_tree_clb_xml_end_element(void *ctx,
+ }
+
+ /* Check Buffer Creation and add the closing tag */
+- if ((WBXML_STRCMP(localName, "syncml:devinf:DevInf") == 0 &&
++ if ((WBXML_STRCMP(localName, "syncml:devinf" WBXML_NAMESPACE_SEPARATOR_STR "DevInf") == 0 &&
+ (!wbxml_buffer_append_cstr(embed_doc, "</DevInf>")))
+ ||
+- (WBXML_STRCMP(localName, "syncml:dmddf1.2:MgmtTree") == 0 &&
++ (WBXML_STRCMP(localName, "syncml:dmddf1.2" WBXML_NAMESPACE_SEPARATOR_STR "MgmtTree") == 0 &&
+ (!wbxml_buffer_append_cstr(embed_doc, "</MgmtTree>"))))
+ {
+ tree_ctx->error = WBXML_ERROR_NOT_ENOUGH_MEMORY;
+@@ -289,7 +290,7 @@ void wbxml_tree_clb_xml_end_element(void *ctx,
+ }
+
+ /* Add doctype to give the XML parser a chance */
+- if (WBXML_STRCMP(localName, "syncml:dmddf1.2:MgmtTree") == 0 &&
++ if (WBXML_STRCMP(localName, "syncml:dmddf1.2" WBXML_NAMESPACE_SEPARATOR_STR "MgmtTree") == 0 &&
+ tree_ctx->tree->lang->langID != WBXML_LANG_SYNCML_SYNCML12)
+ {
+ tree_ctx->error = WBXML_ERROR_UNKNOWN_XML_LANGUAGE;
+@@ -305,7 +306,7 @@ void wbxml_tree_clb_xml_end_element(void *ctx,
+ lang = wbxml_tables_get_table(WBXML_LANG_SYNCML_DEVINF11);
+ break;
+ case WBXML_LANG_SYNCML_SYNCML12:
+- if (WBXML_STRCMP(localName, "syncml:dmddf1.2:MgmtTree") == 0) {
++ if (WBXML_STRCMP(localName, "syncml:dmddf1.2" WBXML_NAMESPACE_SEPARATOR_STR "MgmtTree") == 0) {
+ lang = wbxml_tables_get_table(WBXML_LANG_SYNCML_DMDDF12);
+ } else {
+ lang = wbxml_tables_get_table(WBXML_LANG_SYNCML_DEVINF12);
+
+From: =?UTF-8?q?Sl=C3=A1vek=20Banko?= <slavek.banko@axis.cz>
+Date: Thu, 24 Feb 2022 20:31:15 +0100
+Subject: [PATCH] Change the default internal namespace separator from the
+ colon to the pipe.
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+This solves compatibility with libexpat >= 2.4.5
+after fix the security problem CVE-2022-25236.
+
+This resolves issue #76.
+
+Signed-off-by: Slávek Banko <slavek.banko@axis.cz>
+--- a/src/wbxml_internals.h
++++ b/src/wbxml_internals.h
+@@ -157,8 +157,8 @@ typedef enum WBXMLWVDataType_e {
+ #endif /* WIN32 */
+
+ /* Separator must be the same in both cases - once as a char, once as a string */
+-#define WBXML_NAMESPACE_SEPARATOR ':'
+-#define WBXML_NAMESPACE_SEPARATOR_STR ":"
++#define WBXML_NAMESPACE_SEPARATOR '|'
++#define WBXML_NAMESPACE_SEPARATOR_STR "|"
+
+ /** @} */
+
diff --git a/dev-libs/libwbxml/libwbxml-0.11.7-r1.ebuild b/dev-libs/libwbxml/libwbxml-0.11.7-r1.ebuild
new file mode 100644
index 000000000000..d351e183714d
--- /dev/null
+++ b/dev-libs/libwbxml/libwbxml-0.11.7-r1.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit cmake
+
+DESCRIPTION="Library and tools to parse, encode and handle WBXML documents"
+HOMEPAGE="https://github.com/libwbxml/libwbxml"
+SRC_URI="https://github.com/${PN}/${PN}/archive/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="dev-libs/expat
+ virtual/libiconv"
+DEPEND="${RDEPEND}
+ test? ( dev-libs/check )"
+
+DOCS=( BUGS ChangeLog README References THANKS TODO )
+S=${WORKDIR}/${PN}-${P}
+
+PATCHES=(
+ "${FILESDIR}"/${P}-expat-compat-fixes.patch
+)
+
+src_configure() {
+ local mycmakeargs=(
+ -DENABLE_INSTALL_DOC=OFF
+ -DENABLE_UNIT_TEST=$(usex test)
+ )
+
+ cmake_src_configure
+}
diff --git a/dev-libs/libwbxml/libwbxml-0.11.8.ebuild b/dev-libs/libwbxml/libwbxml-0.11.8.ebuild
new file mode 100644
index 000000000000..8a8e8ca6f73a
--- /dev/null
+++ b/dev-libs/libwbxml/libwbxml-0.11.8.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+DESCRIPTION="Library and tools to parse, encode and handle WBXML documents"
+HOMEPAGE="https://github.com/libwbxml/libwbxml"
+SRC_URI="https://github.com/${PN}/${PN}/archive/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="dev-libs/expat
+ virtual/libiconv"
+DEPEND="${RDEPEND}
+ test? ( dev-libs/check )"
+
+DOCS=( BUGS ChangeLog README References THANKS TODO )
+S=${WORKDIR}/${PN}-${P}
+
+src_configure() {
+ local mycmakeargs=(
+ -DENABLE_INSTALL_DOC=OFF
+ -DENABLE_UNIT_TEST=$(usex test)
+ )
+
+ cmake_src_configure
+}