diff options
| author | Peter Marko <peter.marko@siemens.com> | 2026-01-25 19:35:19 +0100 |
|---|---|---|
| committer | Paul Barker <paul@pbarker.dev> | 2026-02-27 15:54:01 +0000 |
| commit | 9998d74d24a3986042660c4b13d5ea3bbce90407 (patch) | |
| tree | 327af0d2466c3e84a09d9a9bbbf319880fd77fa6 /meta/recipes-core | |
| parent | bd6c85cfa6846ae0cc9d92ad6e7ddf0e6f034e43 (diff) | |
| download | poky-9998d74d24a3986042660c4b13d5ea3bbce90407.tar.gz | |
libxml2: patch CVE-2026-0992
Pick patch which closed [1].
Adapt for missing xmlCatalogPrintDebug per [2].
[1] https://gitlab.gnome.org/GNOME/libxml2/-/issues/1019
[2] https://gitlab.gnome.org/GNOME/libxml2/-/commit/728869809eb7eee1b1681d558b4b506a8019c151
(From OE-Core rev: efef4d450500eb3a43b9f1f399ca84f9ca837d8b)
Signed-off-by: Peter Marko <peter.marko@siemens.com>
Signed-off-by: Yoann Congal <yoann.congal@smile.fr>
Signed-off-by: Paul Barker <paul@pbarker.dev>
Diffstat (limited to 'meta/recipes-core')
| -rw-r--r-- | meta/recipes-core/libxml/libxml2/CVE-2026-0992.patch | 49 | ||||
| -rw-r--r-- | meta/recipes-core/libxml/libxml2_2.9.14.bb | 1 |
2 files changed, 50 insertions, 0 deletions
diff --git a/meta/recipes-core/libxml/libxml2/CVE-2026-0992.patch b/meta/recipes-core/libxml/libxml2/CVE-2026-0992.patch new file mode 100644 index 0000000000..d7c0b47b33 --- /dev/null +++ b/meta/recipes-core/libxml/libxml2/CVE-2026-0992.patch | |||
| @@ -0,0 +1,49 @@ | |||
| 1 | From f75abfcaa419a740a3191e56c60400f3ff18988d Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Daniel Garcia Moreno <daniel.garcia@suse.com> | ||
| 3 | Date: Fri, 19 Dec 2025 11:02:18 +0100 | ||
| 4 | Subject: [PATCH] catalog: Ignore repeated nextCatalog entries | ||
| 5 | |||
| 6 | This patch makes the catalog parsing to ignore repeated entries of | ||
| 7 | nextCatalog with the same value. | ||
| 8 | |||
| 9 | Fix https://gitlab.gnome.org/GNOME/libxml2/-/issues/1019 | ||
| 10 | |||
| 11 | CVE: CVE-2026-0989 | ||
| 12 | Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/libxml2/-/commit/f75abfcaa419a740a3191e56c60400f3ff18988d] | ||
| 13 | Signed-off-by: Peter Marko <peter.marko@siemens.com> | ||
| 14 | --- | ||
| 15 | catalog.c | 18 ++++++++++++++++++ | ||
| 16 | 1 file changed, 18 insertions(+) | ||
| 17 | |||
| 18 | diff --git a/catalog.c b/catalog.c | ||
| 19 | index 46b877e6..fa6d77ca 100644 | ||
| 20 | --- a/catalog.c | ||
| 21 | +++ b/catalog.c | ||
| 22 | @@ -1279,9 +1279,27 @@ xmlParseXMLCatalogNode(xmlNodePtr cur, xmlCatalogPrefer prefer, | ||
| 23 | BAD_CAST "delegateURI", BAD_CAST "uriStartString", | ||
| 24 | BAD_CAST "catalog", prefer, cgroup); | ||
| 25 | } else if (xmlStrEqual(cur->name, BAD_CAST "nextCatalog")) { | ||
| 26 | + xmlCatalogEntryPtr prev = parent->children; | ||
| 27 | + | ||
| 28 | entry = xmlParseXMLCatalogOneNode(cur, XML_CATA_NEXT_CATALOG, | ||
| 29 | BAD_CAST "nextCatalog", NULL, | ||
| 30 | BAD_CAST "catalog", prefer, cgroup); | ||
| 31 | + /* Avoid duplication of nextCatalog */ | ||
| 32 | + while (prev != NULL) { | ||
| 33 | + if ((prev->type == XML_CATA_NEXT_CATALOG) && | ||
| 34 | + (xmlStrEqual (prev->URL, entry->URL)) && | ||
| 35 | + (xmlStrEqual (prev->value, entry->value)) && | ||
| 36 | + (prev->prefer == entry->prefer) && | ||
| 37 | + (prev->group == entry->group)) { | ||
| 38 | + if (xmlDebugCatalogs) | ||
| 39 | + fprintf(stderr, | ||
| 40 | + "Ignoring repeated nextCatalog %s\n", entry->URL); | ||
| 41 | + xmlFreeCatalogEntry(entry, NULL); | ||
| 42 | + entry = NULL; | ||
| 43 | + break; | ||
| 44 | + } | ||
| 45 | + prev = prev->next; | ||
| 46 | + } | ||
| 47 | } | ||
| 48 | if (entry != NULL) { | ||
| 49 | if (parent != NULL) { | ||
diff --git a/meta/recipes-core/libxml/libxml2_2.9.14.bb b/meta/recipes-core/libxml/libxml2_2.9.14.bb index a72aff6c83..bf3099c1f4 100644 --- a/meta/recipes-core/libxml/libxml2_2.9.14.bb +++ b/meta/recipes-core/libxml/libxml2_2.9.14.bb | |||
| @@ -45,6 +45,7 @@ SRC_URI += "http://www.w3.org/XML/Test/xmlts20080827.tar;subdir=${BP};name=testt | |||
| 45 | file://CVE-2025-9714.patch \ | 45 | file://CVE-2025-9714.patch \ |
| 46 | file://CVE-2025-7425.patch \ | 46 | file://CVE-2025-7425.patch \ |
| 47 | file://CVE-2026-0990.patch \ | 47 | file://CVE-2026-0990.patch \ |
| 48 | file://CVE-2026-0992.patch \ | ||
| 48 | " | 49 | " |
| 49 | 50 | ||
| 50 | SRC_URI[archive.sha256sum] = "60d74a257d1ccec0475e749cba2f21559e48139efba6ff28224357c7c798dfee" | 51 | SRC_URI[archive.sha256sum] = "60d74a257d1ccec0475e749cba2f21559e48139efba6ff28224357c7c798dfee" |
