hello Hugo when reviewing this patch, I found a couple of minor difference with the upstream patches
patch 1: -+ ASSERT_STREQ(p, expected); ++ assert_se(streq_ptr(p, expected)); patch 3: --- Remote (Norm) +++ Local (Norm) @@ -8,11 +8,10 @@ + assert(cgroup_path); + assert(pid_is_valid(pid)); @@ -0,0 +0,0 @@ -- CGroupRuntime *crt = unit_get_cgroup_runtime(u); -- if (!crt || !crt->cgroup_path) -- return -EOWNERDEAD; +- if (!u->cgroup_path) +- return -EINVAL; - -- pp = path_startswith(crt->cgroup_path, u->manager->cgroup_root); +- pp = path_startswith(u->cgroup_path, u->manager->cgroup_root); + const char *pp = path_startswith_full(cgroup_path, + u->manager->cgroup_root, + PATH_STARTSWITH_RETURN_LEADING_SLASH|PATH_STARTSWITH_REFUSE_DOT_DOT); @@ -20,8 +19,8 @@ - path_simplify(pp); - @@ -0,0 +0,0 @@ -- p = crt->cgroup_path; -+ p = empty_to_root(crt->cgroup_path); +- p = u->cgroup_path; ++ p = empty_to_root(u->cgroup_path); + assert(path_is_absolute(suffix_path)); + @@ -0,0 +0,0 @@ I suppose that these are due to backporting to older version of systemd but could you confirm ? please send a V2 with the explanation attached to the patch and ping us here Thanks a lot Jérémy On Wed May 20, 2026 at 11:59 AM CEST, Hugo Simeliere via lists.openembedded.org wrote: > From: "Hugo SIMELIERE (Schneider Electric)" > <[email protected]> > > Pick patches from [1], [2], [3] and [4] as mentioned in Debian report in [5]. > > [1] > https://github.com/systemd/systemd/commit/20021e7686426052e3a7505425d7e12085feb2a6 > [2] > https://github.com/systemd/systemd/commit/7ac3220213690e8a8d6d2a6e81e43bd1dce01d69 > [3] > https://github.com/systemd/systemd/commit/21167006574d6b83813c7596759b474f56562412 > [4] > https://github.com/systemd/systemd/commit/54588d2dedff54bfb6036670820650e4ea74628f > [5] https://security-tracker.debian.org/tracker/CVE-2026-29111 > > Signed-off-by: Hugo SIMELIERE (Schneider Electric) > <[email protected]> > Reviewed-by: Bruno VERNAY <[email protected]> > --- > .../systemd/systemd/CVE-2026-29111-01.patch | 168 ++++++++++++++++++ > .../systemd/systemd/CVE-2026-29111-02.patch | 87 +++++++++ > .../systemd/systemd/CVE-2026-29111-03.patch | 103 +++++++++++ > .../systemd/systemd/CVE-2026-29111-04.patch | 37 ++++ > meta/recipes-core/systemd/systemd_255.21.bb | 4 + > 5 files changed, 399 insertions(+) > create mode 100644 meta/recipes-core/systemd/systemd/CVE-2026-29111-01.patch > create mode 100644 meta/recipes-core/systemd/systemd/CVE-2026-29111-02.patch > create mode 100644 meta/recipes-core/systemd/systemd/CVE-2026-29111-03.patch > create mode 100644 meta/recipes-core/systemd/systemd/CVE-2026-29111-04.patch > > diff --git a/meta/recipes-core/systemd/systemd/CVE-2026-29111-01.patch > b/meta/recipes-core/systemd/systemd/CVE-2026-29111-01.patch > new file mode 100644 > index 0000000000..b358f5b021 > --- /dev/null > +++ b/meta/recipes-core/systemd/systemd/CVE-2026-29111-01.patch > @@ -0,0 +1,168 @@ > +From 284fd279f9e9c199982aea51aee59a02e90a2eda Mon Sep 17 00:00:00 2001 > +From: Lennart Poettering <[email protected]> > +Date: Mon, 19 May 2025 12:58:52 +0200 > +Subject: [PATCH 1/4] path-util: add flavour of path_startswith() that leaves > a > + leading slash in place > + > +CVE: CVE-2026-29111 > +Upstream-Status: Backport > [https://github.com/systemd/systemd/commit/20021e7686426052e3a7505425d7e12085feb2a6] > + > +(cherry picked from commit ee19edbb9f3455db3f750089082f3e5a925e3a0c) > +(cherry picked from commit 20021e7686426052e3a7505425d7e12085feb2a6) > +Signed-off-by: Hugo SIMELIERE (Schneider Electric) > <[email protected]> > +--- > + src/basic/fs-util.c | 2 +- > + src/basic/mkdir.c | 2 +- > + src/basic/path-util.c | 39 ++++++++++++++++++++++++++++----------- > + src/basic/path-util.h | 10 ++++++++-- > + src/test/test-path-util.c | 16 ++++++++++++++++ > + 5 files changed, 54 insertions(+), 15 deletions(-) > + > +diff --git a/src/basic/fs-util.c b/src/basic/fs-util.c > +index 5bc7d2f95b..4633a5cd72 100644 > +--- a/src/basic/fs-util.c > ++++ b/src/basic/fs-util.c > +@@ -65,7 +65,7 @@ int rmdir_parents(const char *path, const char *stop) { > + assert(*slash == '/'); > + *slash = '\0'; > + > +- if (path_startswith_full(stop, p, /* accept_dot_dot= */ > false)) > ++ if (path_startswith_full(stop, p, /* flags= */ 0)) > + return 0; > + > + if (rmdir(p) < 0 && errno != ENOENT) > +diff --git a/src/basic/mkdir.c b/src/basic/mkdir.c > +index c770e5ed32..7bc73361a5 100644 > +--- a/src/basic/mkdir.c > ++++ b/src/basic/mkdir.c > +@@ -155,7 +155,7 @@ int mkdir_parents_internal(const char *prefix, const > char *path, mode_t mode, ui > + assert(_mkdirat != mkdirat); > + > + if (prefix) { > +- p = path_startswith_full(path, prefix, /* accept_dot_dot= > */ false); > ++ p = path_startswith_full(path, prefix, /* flags= */ 0); > + if (!p) > + return -ENOTDIR; > + } else > +diff --git a/src/basic/path-util.c b/src/basic/path-util.c > +index 6810bf66aa..e73f5d708e 100644 > +--- a/src/basic/path-util.c > ++++ b/src/basic/path-util.c > +@@ -403,8 +403,8 @@ char* path_simplify_full(char *path, PathSimplifyFlags > flags) { > + return path; > + } > + > +-char* path_startswith_full(const char *path, const char *prefix, bool > accept_dot_dot) { > +- assert(path); > ++char* path_startswith_full(const char *original_path, const char *prefix, > PathStartWithFlags flags) { > ++ assert(original_path); > + assert(prefix); > + > + /* Returns a pointer to the start of the first component after the > parts matched by > +@@ -417,28 +417,45 @@ char* path_startswith_full(const char *path, const > char *prefix, bool accept_dot > + * Returns NULL otherwise. > + */ > + > ++ const char *path = original_path; > ++ > + if ((path[0] == '/') != (prefix[0] == '/')) > + return NULL; > + > + for (;;) { > + const char *p, *q; > +- int r, k; > ++ int m, n; > + > +- r = path_find_first_component(&path, accept_dot_dot, &p); > +- if (r < 0) > ++ m = path_find_first_component(&path, FLAGS_SET(flags, > PATH_STARTSWITH_ACCEPT_DOT_DOT), &p); > ++ if (m < 0) > + return NULL; > + > +- k = path_find_first_component(&prefix, accept_dot_dot, &q); > +- if (k < 0) > ++ n = path_find_first_component(&prefix, FLAGS_SET(flags, > PATH_STARTSWITH_ACCEPT_DOT_DOT), &q); > ++ if (n < 0) > + return NULL; > + > +- if (k == 0) > +- return (char*) (p ?: path); > ++ if (n == 0) { > ++ if (!p) > ++ p = path; > ++ > ++ if (FLAGS_SET(flags, > PATH_STARTSWITH_RETURN_LEADING_SLASH)) { > ++ > ++ if (p <= original_path) > ++ return NULL; > ++ > ++ p--; > ++ > ++ if (*p != '/') > ++ return NULL; > ++ } > ++ > ++ return (char*) p; > ++ } > + > +- if (r != k) > ++ if (m != n) > + return NULL; > + > +- if (!strneq(p, q, r)) > ++ if (!strneq(p, q, m)) > + return NULL; > + } > + } > +diff --git a/src/basic/path-util.h b/src/basic/path-util.h > +index 6d943e967f..e0ec05f4db 100644 > +--- a/src/basic/path-util.h > ++++ b/src/basic/path-util.h > +@@ -53,9 +53,15 @@ int safe_getcwd(char **ret); > + int path_make_absolute_cwd(const char *p, char **ret); > + int path_make_relative(const char *from, const char *to, char **ret); > + int path_make_relative_parent(const char *from_child, const char *to, char > **ret); > +-char* path_startswith_full(const char *path, const char *prefix, bool > accept_dot_dot) _pure_; > ++ > ++typedef enum PathStartWithFlags { > ++ PATH_STARTSWITH_ACCEPT_DOT_DOT = 1U << 0, > ++ PATH_STARTSWITH_RETURN_LEADING_SLASH = 1U << 1, > ++} PathStartWithFlags; > ++ > ++char* path_startswith_full(const char *path, const char *prefix, > PathStartWithFlags flags) _pure_; > + static inline char* path_startswith(const char *path, const char *prefix) { > +- return path_startswith_full(path, prefix, true); > ++ return path_startswith_full(path, prefix, > PATH_STARTSWITH_ACCEPT_DOT_DOT); > + } > + > + int path_compare(const char *a, const char *b) _pure_; > +diff --git a/src/test/test-path-util.c b/src/test/test-path-util.c > +index f5a425689a..71056b08c1 100644 > +--- a/src/test/test-path-util.c > ++++ b/src/test/test-path-util.c > +@@ -754,6 +754,22 @@ TEST(path_startswith) { > + test_path_startswith_one("/foo/bar/barfoo/", "/fo", NULL, NULL); > + } > + > ++static void test_path_startswith_return_leading_slash_one(const char *path, > const char *prefix, const char *expected) { > ++ const char *p; > ++ > ++ log_debug("/* %s(%s, %s) */", __func__, path, prefix); > ++ > ++ p = path_startswith_full(path, prefix, > PATH_STARTSWITH_RETURN_LEADING_SLASH); > ++ assert_se(streq_ptr(p, expected)); > ++} > ++ > ++TEST(path_startswith_return_leading_slash) { > ++ test_path_startswith_return_leading_slash_one("/foo/bar", "/", > "/foo/bar"); > ++ test_path_startswith_return_leading_slash_one("/foo/bar", "/foo", > "/bar"); > ++ test_path_startswith_return_leading_slash_one("/foo/bar", > "/foo/bar", NULL); > ++ test_path_startswith_return_leading_slash_one("/foo/bar/", > "/foo/bar", "/"); > ++} > ++ > + static void test_prefix_root_one(const char *r, const char *p, const char > *expected) { > + _cleanup_free_ char *s = NULL; > + const char *t; > +-- > +2.43.0 > + > diff --git a/meta/recipes-core/systemd/systemd/CVE-2026-29111-02.patch > b/meta/recipes-core/systemd/systemd/CVE-2026-29111-02.patch > new file mode 100644 > index 0000000000..465d1e619d > --- /dev/null > +++ b/meta/recipes-core/systemd/systemd/CVE-2026-29111-02.patch > @@ -0,0 +1,87 @@ > +From ed86ee8a7cc82fe1c68e3fb17be71c9c8e62ca87 Mon Sep 17 00:00:00 2001 > +From: Lennart Poettering <[email protected]> > +Date: Fri, 23 May 2025 06:45:40 +0200 > +Subject: [PATCH 2/4] path-util: invert PATH_STARTSWITH_ACCEPT_DOT_DOT flag > + > +As requested: > https://github.com/systemd/systemd/pull/37572#pullrequestreview-2861928094 > + > +CVE: CVE-2026-29111 > +Upstream-Status: Backport > [https://github.com/systemd/systemd/commit/7ac3220213690e8a8d6d2a6e81e43bd1dce01d69] > + > +(cherry picked from commit ceed11e465f1c8efff1931412a85924d9de7c08d) > +(cherry picked from commit 7ac3220213690e8a8d6d2a6e81e43bd1dce01d69) > +Signed-off-by: Hugo SIMELIERE (Schneider Electric) > <[email protected]> > +--- > + src/basic/fs-util.c | 2 +- > + src/basic/mkdir.c | 2 +- > + src/basic/path-util.c | 4 ++-- > + src/basic/path-util.h | 4 ++-- > + 4 files changed, 6 insertions(+), 6 deletions(-) > + > +diff --git a/src/basic/fs-util.c b/src/basic/fs-util.c > +index 4633a5cd72..21cd6ddcde 100644 > +--- a/src/basic/fs-util.c > ++++ b/src/basic/fs-util.c > +@@ -65,7 +65,7 @@ int rmdir_parents(const char *path, const char *stop) { > + assert(*slash == '/'); > + *slash = '\0'; > + > +- if (path_startswith_full(stop, p, /* flags= */ 0)) > ++ if (path_startswith_full(stop, p, > PATH_STARTSWITH_REFUSE_DOT_DOT)) > + return 0; > + > + if (rmdir(p) < 0 && errno != ENOENT) > +diff --git a/src/basic/mkdir.c b/src/basic/mkdir.c > +index 7bc73361a5..8f14c47214 100644 > +--- a/src/basic/mkdir.c > ++++ b/src/basic/mkdir.c > +@@ -155,7 +155,7 @@ int mkdir_parents_internal(const char *prefix, const > char *path, mode_t mode, ui > + assert(_mkdirat != mkdirat); > + > + if (prefix) { > +- p = path_startswith_full(path, prefix, /* flags= */ 0); > ++ p = path_startswith_full(path, prefix, > PATH_STARTSWITH_REFUSE_DOT_DOT); > + if (!p) > + return -ENOTDIR; > + } else > +diff --git a/src/basic/path-util.c b/src/basic/path-util.c > +index e73f5d708e..a65a5c32f6 100644 > +--- a/src/basic/path-util.c > ++++ b/src/basic/path-util.c > +@@ -426,11 +426,11 @@ char* path_startswith_full(const char *original_path, > const char *prefix, PathSt > + const char *p, *q; > + int m, n; > + > +- m = path_find_first_component(&path, FLAGS_SET(flags, > PATH_STARTSWITH_ACCEPT_DOT_DOT), &p); > ++ m = path_find_first_component(&path, !FLAGS_SET(flags, > PATH_STARTSWITH_REFUSE_DOT_DOT), &p); > + if (m < 0) > + return NULL; > + > +- n = path_find_first_component(&prefix, FLAGS_SET(flags, > PATH_STARTSWITH_ACCEPT_DOT_DOT), &q); > ++ n = path_find_first_component(&prefix, !FLAGS_SET(flags, > PATH_STARTSWITH_REFUSE_DOT_DOT), &q); > + if (n < 0) > + return NULL; > + > +diff --git a/src/basic/path-util.h b/src/basic/path-util.h > +index e0ec05f4db..11a1078df9 100644 > +--- a/src/basic/path-util.h > ++++ b/src/basic/path-util.h > +@@ -55,13 +55,13 @@ int path_make_relative(const char *from, const char *to, > char **ret); > + int path_make_relative_parent(const char *from_child, const char *to, char > **ret); > + > + typedef enum PathStartWithFlags { > +- PATH_STARTSWITH_ACCEPT_DOT_DOT = 1U << 0, > ++ PATH_STARTSWITH_REFUSE_DOT_DOT = 1U << 0, > + PATH_STARTSWITH_RETURN_LEADING_SLASH = 1U << 1, > + } PathStartWithFlags; > + > + char* path_startswith_full(const char *path, const char *prefix, > PathStartWithFlags flags) _pure_; > + static inline char* path_startswith(const char *path, const char *prefix) { > +- return path_startswith_full(path, prefix, > PATH_STARTSWITH_ACCEPT_DOT_DOT); > ++ return path_startswith_full(path, prefix, 0); > + } > + > + int path_compare(const char *a, const char *b) _pure_; > +-- > +2.43.0 > + > diff --git a/meta/recipes-core/systemd/systemd/CVE-2026-29111-03.patch > b/meta/recipes-core/systemd/systemd/CVE-2026-29111-03.patch > new file mode 100644 > index 0000000000..d0ff3fb64c > --- /dev/null > +++ b/meta/recipes-core/systemd/systemd/CVE-2026-29111-03.patch > @@ -0,0 +1,103 @@ > +From 7a1749753b4853866f90ef25d48192e4d1563543 Mon Sep 17 00:00:00 2001 > +From: Mike Yuan <[email protected]> > +Date: Thu, 26 Feb 2026 11:06:00 +0100 > +Subject: [PATCH 3/4] core/cgroup: avoid one unnecessary strjoina() > + > +CVE: CVE-2026-29111 > +Upstream-Status: Backport > [https://github.com/systemd/systemd/commit/21167006574d6b83813c7596759b474f56562412] > + > +(cherry picked from commit 42aee39107fbdd7db1ccd402a2151822b2805e9f) > +(cherry picked from commit 80acea4ef80a4bb78560ed970c34952299b890d6) > +(cherry picked from commit b5fd14693057e5f2c9b4a49603be64ec3608ff6c) > +(cherry picked from commit 21167006574d6b83813c7596759b474f56562412) > +Signed-off-by: Hugo SIMELIERE (Schneider Electric) > <[email protected]> > +--- > + src/core/cgroup.c | 27 +++++++++++++-------------- > + 1 file changed, 13 insertions(+), 14 deletions(-) > + > +diff --git a/src/core/cgroup.c b/src/core/cgroup.c > +index d398655b0a..e5e7f032c2 100644 > +--- a/src/core/cgroup.c > ++++ b/src/core/cgroup.c > +@@ -2568,12 +2568,13 @@ static int unit_update_cgroup( > + return 0; > + } > + > +-static int unit_attach_pid_to_cgroup_via_bus(Unit *u, pid_t pid, const char > *suffix_path) { > ++static int unit_attach_pid_to_cgroup_via_bus(Unit *u, const char > *cgroup_path, pid_t pid) { > + _cleanup_(sd_bus_error_free) sd_bus_error error = SD_BUS_ERROR_NULL; > +- char *pp; > + int r; > + > + assert(u); > ++ assert(cgroup_path); > ++ assert(pid_is_valid(pid)); > + > + if (MANAGER_IS_SYSTEM(u->manager)) > + return -EINVAL; > +@@ -2581,17 +2582,13 @@ static int unit_attach_pid_to_cgroup_via_bus(Unit > *u, pid_t pid, const char *suf > + if (!u->manager->system_bus) > + return -EIO; > + > +- if (!u->cgroup_path) > +- return -EINVAL; > +- > + /* Determine this unit's cgroup path relative to our cgroup root */ > +- pp = path_startswith(u->cgroup_path, u->manager->cgroup_root); > ++ const char *pp = path_startswith_full(cgroup_path, > ++ u->manager->cgroup_root, > ++ > PATH_STARTSWITH_RETURN_LEADING_SLASH|PATH_STARTSWITH_REFUSE_DOT_DOT); > + if (!pp) > + return -EINVAL; > + > +- pp = strjoina("/", pp, suffix_path); > +- path_simplify(pp); > +- > + r = bus_call_method(u->manager->system_bus, > + bus_systemd_mgr, > + "AttachProcessesToUnit", > +@@ -2630,8 +2627,10 @@ int unit_attach_pids_to_cgroup(Unit *u, Set *pids, > const char *suffix_path) { > + return r; > + > + if (isempty(suffix_path)) > +- p = u->cgroup_path; > ++ p = empty_to_root(u->cgroup_path); > + else { > ++ assert(path_is_absolute(suffix_path)); > ++ > + joined = path_join(u->cgroup_path, suffix_path); > + if (!joined) > + return -ENOMEM; > +@@ -2649,7 +2648,7 @@ int unit_attach_pids_to_cgroup(Unit *u, Set *pids, > const char *suffix_path) { > + * before we use it */ > + r = pidref_verify(pid); > + if (r < 0) { > +- log_unit_info_errno(u, r, "PID " PID_FMT " vanished > before we could move it to target cgroup '%s', skipping: %m", pid->pid, > empty_to_root(p)); > ++ log_unit_info_errno(u, r, "PID " PID_FMT " vanished > before we could move it to target cgroup '%s', skipping: %m", pid->pid, p); > + continue; > + } > + > +@@ -2660,7 +2659,7 @@ int unit_attach_pids_to_cgroup(Unit *u, Set *pids, > const char *suffix_path) { > + > + log_unit_full_errno(u, again ? LOG_DEBUG : > LOG_INFO, r, > + "Couldn't move process > "PID_FMT" to%s requested cgroup '%s': %m", > +- pid->pid, again ? " directly" : > "", empty_to_root(p)); > ++ pid->pid, again ? " directly" : > "", p); > + > + if (again) { > + int z; > +@@ -2670,9 +2669,9 @@ int unit_attach_pids_to_cgroup(Unit *u, Set *pids, > const char *suffix_path) { > + * Since it's more privileged it might be > able to move the process across the > + * leaves of a subtree whose top node is > not owned by us. */ > + > +- z = unit_attach_pid_to_cgroup_via_bus(u, > pid->pid, suffix_path); > ++ z = unit_attach_pid_to_cgroup_via_bus(u, p, > pid->pid); > + if (z < 0) > +- log_unit_info_errno(u, z, "Couldn't > move process "PID_FMT" to requested cgroup '%s' (directly or via the system > bus): %m", pid->pid, empty_to_root(p)); > ++ log_unit_info_errno(u, z, "Couldn't > move process "PID_FMT" to requested cgroup '%s' (directly or via the system > bus): %m", pid->pid, p); > + else { > + if (ret >= 0) > + ret++; /* Count successful > additions */ > +-- > +2.43.0 > + > diff --git a/meta/recipes-core/systemd/systemd/CVE-2026-29111-04.patch > b/meta/recipes-core/systemd/systemd/CVE-2026-29111-04.patch > new file mode 100644 > index 0000000000..d6c3f5ccdc > --- /dev/null > +++ b/meta/recipes-core/systemd/systemd/CVE-2026-29111-04.patch > @@ -0,0 +1,37 @@ > +From 0d2c41d0f024088a275ac0c02d50205c800dec8a Mon Sep 17 00:00:00 2001 > +From: Mike Yuan <[email protected]> > +Date: Thu, 26 Feb 2026 11:06:34 +0100 > +Subject: [PATCH 4/4] core: validate input cgroup path more prudently > + > +CVE: CVE-2026-29111 > +Upstream-Status: Backport > [https://github.com/systemd/systemd/commit/54588d2dedff54bfb6036670820650e4ea74628f] > + > +(cherry picked from commit efa6ba2ab625aaa160ac435a09e6482fc63bdbe8) > +(cherry picked from commit 3cee294fe8cf4fa0eff933ab21416d099942cabd) > +(cherry picked from commit 1d22f706bd04f45f8422e17fbde3f56ece17758a) > +(cherry picked from commit 54588d2dedff54bfb6036670820650e4ea74628f) > +Signed-off-by: Hugo SIMELIERE (Schneider Electric) > <[email protected]> > +--- > + src/core/dbus-manager.c | 6 ++++++ > + 1 file changed, 6 insertions(+) > + > +diff --git a/src/core/dbus-manager.c b/src/core/dbus-manager.c > +index c7372ca033..cb84ba9866 100644 > +--- a/src/core/dbus-manager.c > ++++ b/src/core/dbus-manager.c > +@@ -646,6 +646,12 @@ static int > method_get_unit_by_control_group(sd_bus_message *message, void *userd > + if (r < 0) > + return r; > + > ++ if (!path_is_absolute(cgroup)) > ++ return sd_bus_error_setf(error, SD_BUS_ERROR_INVALID_ARGS, > "Control group path is not absolute: %s", cgroup); > ++ > ++ if (!path_is_normalized(cgroup)) > ++ return sd_bus_error_setf(error, SD_BUS_ERROR_INVALID_ARGS, > "Control group path is not normalized: %s", cgroup); > ++ > + u = manager_get_unit_by_cgroup(m, cgroup); > + if (!u) > + return sd_bus_error_setf(error, BUS_ERROR_NO_SUCH_UNIT, > +-- > +2.43.0 > + > diff --git a/meta/recipes-core/systemd/systemd_255.21.bb > b/meta/recipes-core/systemd/systemd_255.21.bb > index 9c5f8af240..e5a0fd9170 100644 > --- a/meta/recipes-core/systemd/systemd_255.21.bb > +++ b/meta/recipes-core/systemd/systemd_255.21.bb > @@ -33,6 +33,10 @@ SRC_URI += " \ > file://CVE-2026-40225-02.patch \ > file://CVE-2026-40226-01.patch \ > file://CVE-2026-40226-02.patch \ > + file://CVE-2026-29111-01.patch \ > + file://CVE-2026-29111-02.patch \ > + file://CVE-2026-29111-03.patch \ > + file://CVE-2026-29111-04.patch \ > " > > # patches needed by musl
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#238325): https://lists.openembedded.org/g/openembedded-core/message/238325 Mute This Topic: https://lists.openembedded.org/mt/119405750/21656 Group Owner: [email protected] Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [[email protected]] -=-=-=-=-=-=-=-=-=-=-=-
