From 051007f02197165c795e372c8732437f7166840e Mon Sep 17 00:00:00 2001
From: Upgrade Helper <auh@yoctoproject.org>
Date: Tue, 30 Jun 2026 05:48:53 +0000
Subject: [PATCH] acl: upgrade 2.3.2 -> 2.4.0

---
 ...t_uid-fix-memory-wasting-loop-if-use.patch | 49 -------------------
 ...isc.test-Don-t-mix-stdout-and-stderr.patch | 35 -------------
 .../attr/{acl_2.3.2.bb => acl_2.4.0.bb}       |  4 +-
 3 files changed, 1 insertion(+), 87 deletions(-)
 delete mode 100644 meta/recipes-support/attr/acl/0001-libmisc-__acl_get_uid-fix-memory-wasting-loop-if-use.patch
 delete mode 100644 meta/recipes-support/attr/acl/0001-test-misc.test-Don-t-mix-stdout-and-stderr.patch
 rename meta/recipes-support/attr/{acl_2.3.2.bb => acl_2.4.0.bb} (90%)

diff --git a/meta/recipes-support/attr/acl/0001-libmisc-__acl_get_uid-fix-memory-wasting-loop-if-use.patch b/meta/recipes-support/attr/acl/0001-libmisc-__acl_get_uid-fix-memory-wasting-loop-if-use.patch
deleted file mode 100644
index 5052bdaa2f..0000000000
--- a/meta/recipes-support/attr/acl/0001-libmisc-__acl_get_uid-fix-memory-wasting-loop-if-use.patch
+++ /dev/null
@@ -1,49 +0,0 @@
-From 56abe432b65801f31277fb9a3bca0f9e31502315 Mon Sep 17 00:00:00 2001
-From: Matthias Gerstner <matthias.gerstner@suse.de>
-Date: Thu, 25 Apr 2024 12:43:49 +0200
-Subject: [PATCH] libmisc: __acl_get_uid(): fix memory wasting loop if user
- does not exist
-
-I noticed that `acl_from_text()` unexpectedly returns ENOMEM for invalid
-user names. The reason for this is a missing break statement in the for
-loop in `__acl_get_uid()`, which causes the loop to act as if ERANGE was
-returned from `getpwnam_r()`, thereby exponentially increasing the
-buffer size to (in my case) multiple gigabytes, until `grow_buffer()`
-reports ENOMEM, which terminates the `__acl_get_uid()` function.
-
-This is a pretty costly "no such user" lookup that can disturb a
-process's heap memory management, but can also cause a process to fail
-e.g. if it is multithreaded and other threads encounter an ENOMEM,
-before `__acl_get_uid()` frees the gigantic heap buffer and returns.
-The allocated memory isn't actually used. Therefore on Linux it should
-not affect other processes by default, due to its overcommit memory
-and lazy memory allocation strategy.
-
-Fix this by properly terminating the for loop on any conditions except
-an ERANGE error being reported. The same break statement correctly
-exists in `__acl_get_gid()` already.
-
-Fixes: 3737f00 ("use thread-safe getpwnam_r and getgrnam_r")
-Signed-off-by: Andreas Gruenbacher <agruenba@redhat.com>
-
-Upstream-Status: Backport
-Signed-off-by: Ross Burton <ross.burton@arm.com>
----
- libmisc/uid_gid_lookup.c | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/libmisc/uid_gid_lookup.c b/libmisc/uid_gid_lookup.c
-index a4f21f6..74baab4 100644
---- a/libmisc/uid_gid_lookup.c
-+++ b/libmisc/uid_gid_lookup.c
-@@ -91,6 +91,7 @@ __acl_get_uid(const char *token, uid_t *uid_p)
- 		if (err == ERANGE)
- 			continue;
- 		errno = err ? err : EINVAL;
-+		break;
- 	}
- 	free(buffer);
- 	return result ? 0 : -1;
--- 
-2.43.0
-
diff --git a/meta/recipes-support/attr/acl/0001-test-misc.test-Don-t-mix-stdout-and-stderr.patch b/meta/recipes-support/attr/acl/0001-test-misc.test-Don-t-mix-stdout-and-stderr.patch
deleted file mode 100644
index 5aa3f3224c..0000000000
--- a/meta/recipes-support/attr/acl/0001-test-misc.test-Don-t-mix-stdout-and-stderr.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-From 47f8039ec9bd08b629775c8e788d11e41fa95f14 Mon Sep 17 00:00:00 2001
-From: Andreas Gruenbacher <agruenba@redhat.com>
-Date: Mon, 24 Mar 2025 21:14:09 +0100
-Subject: [PATCH] test/misc.test: Don't mix stdout and stderr
-
-In different environments, we may not get the stdout and stderr output
-in the order the run script expects, so check both separately.
-
-Fixes: https://savannah.nongnu.org/bugs/?66944
-Signed-off-by: Andreas Gruenbacher <agruenba@redhat.com>
-
-Upstream-Status: Backport
-Signed-off-by: Ross Burton <ross.burton@arm.com>
----
- test/misc.test | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/test/misc.test b/test/misc.test
-index 06b3136..57c02e5 100644
---- a/test/misc.test
-+++ b/test/misc.test
-@@ -440,8 +440,9 @@ Dangling symlink test https://savannah.nongnu.org/bugs/?28131
- 	> other::r-x
- 	> 
- 	$ setfacl -R -m u:bin:rw d
--	$ getfacl -RL d
-+	$ getfacl -RL d > /dev/null
- 	> getfacl: d/b: No such file or directory
-+	$ getfacl -RL d 2> /dev/null
- 	> # file: d
- 	> # owner: %TUSER
- 	> # group: %TGROUP
--- 
-2.43.0
-
diff --git a/meta/recipes-support/attr/acl_2.3.2.bb b/meta/recipes-support/attr/acl_2.4.0.bb
similarity index 90%
rename from meta/recipes-support/attr/acl_2.3.2.bb
rename to meta/recipes-support/attr/acl_2.4.0.bb
index a405cc2692..ef9ee492a0 100644
--- a/meta/recipes-support/attr/acl_2.3.2.bb
+++ b/meta/recipes-support/attr/acl_2.4.0.bb
@@ -16,11 +16,9 @@ LIC_FILES_CHKSUM = "file://doc/COPYING;md5=c781d70ed2b4d48995b790403217a249 \
 DEPENDS = "attr"
 
 SRC_URI = "${SAVANNAH_GNU_MIRROR}/acl/${BP}.tar.gz \
-           file://0001-libmisc-__acl_get_uid-fix-memory-wasting-loop-if-use.patch \
-           file://0001-test-misc.test-Don-t-mix-stdout-and-stderr.patch \
            file://run-ptest \
            "
-SRC_URI[sha256sum] = "5f2bdbad629707aa7d85c623f994aa8a1d2dec55a73de5205bac0bf6058a2f7c"
+SRC_URI[sha256sum] = "73c853c3d44e1f693e5a96a986f1bd19d3d0dac2c7d453e796177774bc4e5f6a"
 
 inherit autotools gettext ptest
 
-- 
2.47.1

