glibc: included upstream fixes

This commit is contained in:
Tim Biermann 2021-12-11 22:53:16 +01:00
parent 6901de8fe3
commit ef16948581
Signed by: tb
GPG Key ID: 42F8B4E30B673606
5 changed files with 4395 additions and 53 deletions

View File

@ -1,11 +1,11 @@
untrusted comment: verify with /etc/ports/core.pub
RWRJc1FUaeVeqvKhXIzyuug5zMxiqQzi5AB959uIdPTkaIOfxi4NPS1TMt+DakFGiZokfW7j+0f9rCTS8hG2gC7SLY4p90cerw8=
SHA256 (Pkgfile) = 28b166045febad3ccd774d1e6fa76090e13e13dd9b6deb8f843363e82df27135
RWRJc1FUaeVeqnN1rd8Njv9KhzrTZTJ4oAtldvvN2Pom5JFy3/26lYV9U1EdRGmBLI6jVh4YKJl7GPEituRjYiUuW3h5Y9nfwA4=
SHA256 (Pkgfile) = 5d8ed6bf0836c191e22ec0fb89ff08a7d673ceac79cf4738917626dde25c8e49
SHA256 (.footprint) = bf89f76f349c6872809f814548b0e58b1ef67fe374f6ec9c17a99dbe64c1fa1f
SHA256 (glibc-2.34.tar.xz) = 44d26a1fe20b8853a48f470ead01e4279e869ac149b195dda4e44a195d981ab2
SHA256 (linux-5.10.tar.xz) = dcdf99e43e98330d925016985bfbc7b83c66d367b714b2de0cbbfcbf83d8ca43
SHA256 (bz27343.patch) = 1caa9946bb15f6a84193a7a6ed4e4a77006085ef6728de7ede8cc9694534c24e
SHA256 (glibc-python3.patch) = 4a6511436c8abb708f5cb7e9baaf9812f2dc4bb5665a9376c1e270eae4f8b14f
SHA256 (glibc-2.34-upstream-fixes.patch) = 54e965200314f627a3412dd723d31e44a56ae9a156fce066d2a742caa86c0a36
SHA256 (glibc-c-utf8-locale-1.patch) = c48c306658ede269fb4a43140d41a3f609bffd17a8f661127e3e4dde48b85cd4
SHA256 (glibc-c-utf8-locale-2.patch) = a9d3c0660e6a48bb22dc77afbc7bb47ce79ca0d8c2ee8ebee4228d8d4952214e
SHA256 (hosts) = 5c02b256c105f1d4a12fb738d71c1bab9eb126533074d7a0c8a14b92670c9431

View File

@ -4,10 +4,10 @@
name=glibc
version=2.34
release=1
release=2
source=(https://ftp.gnu.org/gnu/glibc/glibc-$version.tar.xz
https://www.kernel.org/pub/linux/kernel/v5.x/linux-5.10.tar.xz
bz27343.patch glibc-python3.patch
glibc-python3.patch glibc-2.34-upstream-fixes.patch
glibc-c-utf8-locale-1.patch glibc-c-utf8-locale-2.patch
hosts resolv.conf nsswitch.conf host.conf ld.so.conf)
@ -19,6 +19,7 @@ build() {
make -C $SRC/linux-5.10 INSTALL_HDR_PATH=$PKG/usr headers_install
chown root:root $PKG/usr
patch -p1 -d $SRC/glibc-${version:0:4} -i $SRC/glibc-2.34-upstream-fixes.patch
patch -p1 -d $SRC/glibc-${version:0:4} -i $SRC/glibc-python3.patch
patch -p1 -d $SRC/glibc-${version:0:4} -i $SRC/glibc-c-utf8-locale-1.patch
patch -p1 -d $SRC/glibc-${version:0:4} -i $SRC/glibc-c-utf8-locale-2.patch

View File

@ -1,48 +0,0 @@
From c3479fb7939898ec22c655c383454d6e8b982a67 Mon Sep 17 00:00:00 2001
From: Sergei Trofimovich <slyfox@gentoo.org>
Date: Fri, 5 Feb 2021 07:32:18 +0000
Subject: [PATCH] nsswitch: return result when nss database is locked [BZ
#27343]
Before the change nss_database_check_reload_and_get() did not populate
the '*result' value when it returned success in a case of chroot
detection. This caused initgroups() to use garage pointer in the
following test (extracted from unbound):
```
int main() {
// load some NSS modules
struct passwd * pw = getpwnam("root");
chdir("/tmp");
chroot("/tmp");
chdir("/");
// access nsswitch.conf in a chroot
initgroups("root", 0);
}
```
Reviewed-by: DJ Delorie <dj@redhat.com>
---
nss/nss_database.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/nss/nss_database.c b/nss/nss_database.c
index cf0306adc4..e1bef6bd75 100644
--- a/nss/nss_database.c
+++ b/nss/nss_database.c
@@ -398,8 +398,9 @@ nss_database_check_reload_and_get (struct nss_database_state *local,
&& (str.st_ino != local->root_ino
|| str.st_dev != local->root_dev)))
{
- /* Change detected; disable reloading. */
+ /* Change detected; disable reloading and return current state. */
atomic_store_release (&local->data.reload_disabled, 1);
+ *result = local->data.services[database_index];
__libc_lock_unlock (local->lock);
__nss_module_disable_loading ();
return true;
--
2.27.0

File diff suppressed because it is too large Load Diff

View File

@ -2,3 +2,5 @@
/sbin/telinit U
# provide this new locale by default
/usr/bin/localedef -i C -f UTF-8 C.UTF-8