From d82b6e3d2cc5374f55a796476462882c5549b0d2 Mon Sep 17 00:00:00 2001 From: "Andreas K. Hüttel" Date: Mon, 21 Feb 2022 22:41:50 +0100 Subject: Restore dropped bracket in 0301, rebase all MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Andreas K. Hüttel --- 9999/0001-Disable-ldconfig-during-install.patch | 8 ++++---- ...eps-posix-getaddrinfo.c-gaih_inet-Only-us.patch | 12 +++++------ ...Adapt-to-Gentoo-specific-etc-mail-aliases.patch | 14 ++++++------- ...O0-in-conform-tests-to-survive-CC-changes.patch | 14 ++++++------- .../0006-Fix-miscompilation-on-ia64-s-gcc-10.patch | 8 ++++---- 9999/0020-make-clone3-syscall-optional.patch | 8 ++++---- ...t-skip-entries-with-zero-d_ino-values-BZ-.patch | 10 ++++----- ...2-linux-Use-getdents64-on-non-LFS-readdir.patch | 14 ++++++------- ...nternal-DIR-filepos-as-off64_t-BZ-23960-B.patch | 24 +++++++++++----------- 9999/0204-linux-Add-__readdir64_unlocked.patch | 10 ++++----- 9999/0205-linux-Add-__old_readdir64_unlocked.patch | 12 +++++------ ...etdents64-on-readdir64-compat-implementat.patch | 15 +++++++------- 9999/0207-dirent-Deprecate-getdirentries.patch | 22 ++++++++++---------- ...ault-in-getpwuid-when-stat-fails-BZ-28752.patch | 15 +++++++------- 14 files changed, 93 insertions(+), 93 deletions(-) diff --git a/9999/0001-Disable-ldconfig-during-install.patch b/9999/0001-Disable-ldconfig-during-install.patch index 6080ceb..fde0cbb 100644 --- a/9999/0001-Disable-ldconfig-during-install.patch +++ b/9999/0001-Disable-ldconfig-during-install.patch @@ -1,7 +1,7 @@ -From 479864345ca9f13e439b68681e13beb3dce60f7c Mon Sep 17 00:00:00 2001 +From 77b6eec2fbc116152cdc0362448e89a22ea1ae83 Mon Sep 17 00:00:00 2001 From: Mike Frysinger Date: Tue, 3 Aug 2021 00:34:59 +0200 -Subject: [PATCH 1/6] Disable ldconfig during install +Subject: [PATCH 01/14] Disable ldconfig during install Do not bother running ldconfig on DESTDIR. It's a waste of time as we won't use the result (portage will rebuild the cache after install). @@ -15,7 +15,7 @@ https://bugs.gentoo.org/431038 1 file changed, 1 insertion(+) diff --git a/Makefile b/Makefile -index f98d5a9e67..ef0077677c 100644 +index b1454882bd..73c3ef1e76 100644 --- a/Makefile +++ b/Makefile @@ -110,6 +110,7 @@ elf/ldso_install: @@ -27,5 +27,5 @@ index f98d5a9e67..ef0077677c 100644 $(elf-objpfx)ldconfig $(addprefix -r ,$(install_root)) \ $(slibdir) $(libdir) -- -2.31.1 +2.34.1 diff --git a/9999/0002-Revert-sysdeps-posix-getaddrinfo.c-gaih_inet-Only-us.patch b/9999/0002-Revert-sysdeps-posix-getaddrinfo.c-gaih_inet-Only-us.patch index b256229..d6cd1b3 100644 --- a/9999/0002-Revert-sysdeps-posix-getaddrinfo.c-gaih_inet-Only-us.patch +++ b/9999/0002-Revert-sysdeps-posix-getaddrinfo.c-gaih_inet-Only-us.patch @@ -1,8 +1,8 @@ -From 10aed4ee2c685613d190434649bbac896b364680 Mon Sep 17 00:00:00 2001 +From 93e05c56a80d3145e3552ea611f2bd8c755d5887 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20K=2E=20H=C3=BCttel?= Date: Tue, 29 Aug 2017 22:58:50 +0200 -Subject: [PATCH 2/6] Revert " * sysdeps/posix/getaddrinfo.c (gaih_inet): Only - use gethostbyname4_r" +Subject: [PATCH 02/14] Revert " * sysdeps/posix/getaddrinfo.c (gaih_inet): + Only use gethostbyname4_r" This reverts commit 8479f23aa1d5e5477a37f46823856bdafaedfa46. @@ -17,7 +17,7 @@ This makes tst-nss-files-hosts-multi fail. Disable it. 2 files changed, 2 insertions(+), 8 deletions(-) diff --git a/nss/Makefile b/nss/Makefile -index bccf9f2806..c90fee2e4c 100644 +index 552e5d03e1..35ec106e0c 100644 --- a/nss/Makefile +++ b/nss/Makefile @@ -74,7 +74,6 @@ tests-container = \ @@ -29,7 +29,7 @@ index bccf9f2806..c90fee2e4c 100644 tests += tst-nss-files-alias-leak tests += tst-nss-files-alias-truncated diff --git a/sysdeps/posix/getaddrinfo.c b/sysdeps/posix/getaddrinfo.c -index 838a68f022..1bb2263225 100644 +index 18dccd5924..2cca006f3d 100644 --- a/sysdeps/posix/getaddrinfo.c +++ b/sysdeps/posix/getaddrinfo.c @@ -733,13 +733,8 @@ gaih_inet (const char *name, const struct gaih_service *service, @@ -49,5 +49,5 @@ index 838a68f022..1bb2263225 100644 { while (1) -- -2.31.1 +2.34.1 diff --git a/9999/0003-Adapt-to-Gentoo-specific-etc-mail-aliases.patch b/9999/0003-Adapt-to-Gentoo-specific-etc-mail-aliases.patch index 9588b09..32c5e4a 100644 --- a/9999/0003-Adapt-to-Gentoo-specific-etc-mail-aliases.patch +++ b/9999/0003-Adapt-to-Gentoo-specific-etc-mail-aliases.patch @@ -1,7 +1,7 @@ -From 60c8192d7a9245a2d1ad491d73b2677564d41374 Mon Sep 17 00:00:00 2001 +From 6e27ad8827f67f742aa53b72c141002085e7e1a8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20K=2E=20H=C3=BCttel?= Date: Mon, 22 Oct 2018 22:34:13 +0200 -Subject: [PATCH 3/6] Adapt to Gentoo-specific /etc/mail/aliases +Subject: [PATCH 03/14] Adapt to Gentoo-specific /etc/mail/aliases MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit @@ -17,10 +17,10 @@ Signed-off-by: Andreas K. Hüttel 3 files changed, 17 insertions(+), 11 deletions(-) diff --git a/nss/nss_files/files-alias.c b/nss/nss_files/files-alias.c -index 2a4023b9a9..42c2a76d2f 100644 +index 505721388f..44d835cace 100644 --- a/nss/nss_files/files-alias.c +++ b/nss/nss_files/files-alias.c -@@ -43,7 +43,7 @@ internal_setent (FILE **stream) +@@ -42,7 +42,7 @@ internal_setent (FILE **stream) if (*stream == NULL) { @@ -30,7 +30,7 @@ index 2a4023b9a9..42c2a76d2f 100644 if (*stream == NULL) status = errno == EAGAIN ? NSS_STATUS_TRYAGAIN : NSS_STATUS_UNAVAIL; diff --git a/nss/tst-nss-files-alias-leak.c b/nss/tst-nss-files-alias-leak.c -index 3b8af66294..91312d2552 100644 +index 576f07fa0a..29962764e2 100644 --- a/nss/tst-nss-files-alias-leak.c +++ b/nss/tst-nss-files-alias-leak.c @@ -45,27 +45,27 @@ prepare (int argc, char **argv) @@ -79,7 +79,7 @@ index 3b8af66294..91312d2552 100644 FILE *fp = xfopen (path, "w"); for (int i = 0; i < many_aliases; ++i) diff --git a/support/support_chroot.c b/support/support_chroot.c -index e1628eb53b..4c58eba6a4 100644 +index 4bf6fe0834..1548eba2ad 100644 --- a/support/support_chroot.c +++ b/support/support_chroot.c @@ -52,13 +52,19 @@ support_chroot_create (struct support_chroot_configuration conf) @@ -104,5 +104,5 @@ index e1628eb53b..4c58eba6a4 100644 /* valgrind needs a temporary directory in the chroot. */ { -- -2.31.1 +2.34.1 diff --git a/9999/0005-Force-O0-in-conform-tests-to-survive-CC-changes.patch b/9999/0005-Force-O0-in-conform-tests-to-survive-CC-changes.patch index 1262b6b..d39eb5d 100644 --- a/9999/0005-Force-O0-in-conform-tests-to-survive-CC-changes.patch +++ b/9999/0005-Force-O0-in-conform-tests-to-survive-CC-changes.patch @@ -1,7 +1,7 @@ -From 21bbee17488159cff563f90ed83aee59703cb21e Mon Sep 17 00:00:00 2001 +From 16337b6a4a14c8eb7ae57341aa04d7d571f00783 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20K=2E=20H=C3=BCttel?= Date: Fri, 14 Dec 2018 20:43:04 +0100 -Subject: [PATCH 5/6] Force -O0 in conform tests to survive $CC changes +Subject: [PATCH 04/14] Force -O0 in conform tests to survive $CC changes MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit @@ -22,10 +22,10 @@ Signed-off-by: Andreas K. Hüttel 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/conform/conformtest.py b/conform/conformtest.py -index f0405b7186..14d342e4c4 100644 +index 94a7ee110f..90c81ac88e 100644 --- a/conform/conformtest.py +++ b/conform/conformtest.py -@@ -562,7 +562,7 @@ class HeaderTests(object): +@@ -566,7 +566,7 @@ class HeaderTests(object): o_file = os.path.join(self.temp_dir, 'test.o') with open(c_file, 'w') as c_file_out: c_file_out.write('#include <%s>\n%s' % (self.header, text)) @@ -34,7 +34,7 @@ index f0405b7186..14d342e4c4 100644 try: subprocess.check_call(cmd, shell=True) except subprocess.CalledProcessError: -@@ -613,7 +613,9 @@ class HeaderTests(object): +@@ -620,7 +620,9 @@ class HeaderTests(object): out_file = os.path.join(self.temp_dir, 'namespace-out') with open(c_file, 'w') as c_file_out: c_file_out.write('#include <%s>\n' % self.header) @@ -46,7 +46,7 @@ index f0405b7186..14d342e4c4 100644 subprocess.check_call(cmd, shell=True) bad_tokens = set() diff --git a/conform/linknamespace.py b/conform/linknamespace.py -index 66b16e244a..78c80d7645 100644 +index f7fe3a7a0a..ad87fd2a6d 100644 --- a/conform/linknamespace.py +++ b/conform/linknamespace.py @@ -157,7 +157,9 @@ def main(): @@ -61,5 +61,5 @@ index 66b16e244a..78c80d7645 100644 args.header) with tempfile.TemporaryDirectory() as temp_dir: -- -2.31.1 +2.34.1 diff --git a/9999/0006-Fix-miscompilation-on-ia64-s-gcc-10.patch b/9999/0006-Fix-miscompilation-on-ia64-s-gcc-10.patch index 9f1148b..6fb25e1 100644 --- a/9999/0006-Fix-miscompilation-on-ia64-s-gcc-10.patch +++ b/9999/0006-Fix-miscompilation-on-ia64-s-gcc-10.patch @@ -1,7 +1,7 @@ -From 83b7893377b93d84e8bea1be08686b96cb98024d Mon Sep 17 00:00:00 2001 +From 7fedf8c50534b2930caf2fad55cd98b9eed36e82 Mon Sep 17 00:00:00 2001 From: Sergei Trofimovich Date: Sat, 11 Jul 2020 20:06:51 +0300 -Subject: [PATCH 6/6] Fix miscompilation on ia64's gcc-10 +Subject: [PATCH 05/14] Fix miscompilation on ia64's gcc-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit @@ -13,7 +13,7 @@ Signed-off-by: Andreas K. Hüttel 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/sysdeps/unix/sysv/linux/ia64/dl-sysdep.h b/sysdeps/unix/sysv/linux/ia64/dl-sysdep.h -index 24650ce31f..20294e6ff0 100644 +index 0d2a1d093a..b50694d6f3 100644 --- a/sysdeps/unix/sysv/linux/ia64/dl-sysdep.h +++ b/sysdeps/unix/sysv/linux/ia64/dl-sysdep.h @@ -32,7 +32,9 @@ @@ -28,5 +28,5 @@ index 24650ce31f..20294e6ff0 100644 # define DL_SYSINFO_IMPLEMENTATION \ asm (".text\n\t" \ -- -2.31.1 +2.34.1 diff --git a/9999/0020-make-clone3-syscall-optional.patch b/9999/0020-make-clone3-syscall-optional.patch index 33aa08f..4654f06 100644 --- a/9999/0020-make-clone3-syscall-optional.patch +++ b/9999/0020-make-clone3-syscall-optional.patch @@ -1,7 +1,7 @@ -From 1f714c474eb248b3fa2c84f3b0f22cc509c0e6c9 Mon Sep 17 00:00:00 2001 +From 57babb0afaa90263a7ea416aa9dc3734bb8ceacc Mon Sep 17 00:00:00 2001 From: Sam James Date: Wed, 1 Dec 2021 14:58:40 +0000 -Subject: [PATCH] clone-internal.c: make clone3 syscall optional +Subject: [PATCH 06/14] clone-internal.c: make clone3 syscall optional We're disabling clone3 for now _CONDITIONALLY_ (not by default) to allow compatibility with applications using older Electron. @@ -31,7 +31,7 @@ Signed-off-by: Sam James 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sysdeps/unix/sysv/linux/clone-internal.c b/sysdeps/unix/sysv/linux/clone-internal.c -index 979f7880be..c5566daf73 100644 +index a71effcbd3..60efe1f453 100644 --- a/sysdeps/unix/sysv/linux/clone-internal.c +++ b/sysdeps/unix/sysv/linux/clone-internal.c @@ -48,7 +48,7 @@ __clone_internal (struct clone_args *cl_args, @@ -44,5 +44,5 @@ index 979f7880be..c5566daf73 100644 int saved_errno = errno; ret = __clone3 (cl_args, sizeof (*cl_args), func, arg); -- -2.32.0 +2.34.1 diff --git a/9999/0201-linux-Do-not-skip-entries-with-zero-d_ino-values-BZ-.patch b/9999/0201-linux-Do-not-skip-entries-with-zero-d_ino-values-BZ-.patch index 5325a91..221dbd6 100644 --- a/9999/0201-linux-Do-not-skip-entries-with-zero-d_ino-values-BZ-.patch +++ b/9999/0201-linux-Do-not-skip-entries-with-zero-d_ino-values-BZ-.patch @@ -1,7 +1,7 @@ -From 7856a2b7ae88602bc9ee65e08fe652b6a6ad5f7e Mon Sep 17 00:00:00 2001 +From 58b842de801f64de1d323ecceaf24b7cd30cbb87 Mon Sep 17 00:00:00 2001 From: Adhemerval Zanella Date: Tue, 20 Oct 2020 12:18:56 -0300 -Subject: [PATCH 1/7] linux: Do not skip entries with zero d_ino values [BZ +Subject: [PATCH 07/14] linux: Do not skip entries with zero d_ino values [BZ #12165] According to Linux commit 2adc376c55194 (vfs: avoid creation of inode @@ -18,7 +18,7 @@ Checked on x86_64-linux-gnu and i686-linux-gnu. 2 files changed, 44 insertions(+), 74 deletions(-) diff --git a/sysdeps/unix/sysv/linux/readdir.c b/sysdeps/unix/sysv/linux/readdir.c -index b480135164..c0619ce06f 100644 +index c31f349639..7743f50071 100644 --- a/sysdeps/unix/sysv/linux/readdir.c +++ b/sysdeps/unix/sysv/linux/readdir.c @@ -25,51 +25,36 @@ @@ -96,7 +96,7 @@ index b480135164..c0619ce06f 100644 return dp; } diff --git a/sysdeps/unix/sysv/linux/readdir64.c b/sysdeps/unix/sysv/linux/readdir64.c -index 52b11eb9d9..3aea0b1df1 100644 +index e876d84b02..d990a36e4e 100644 --- a/sysdeps/unix/sysv/linux/readdir64.c +++ b/sysdeps/unix/sysv/linux/readdir64.c @@ -30,55 +30,40 @@ @@ -178,5 +178,5 @@ index 52b11eb9d9..3aea0b1df1 100644 #if IS_IN (libc) __libc_lock_unlock (dirp->lock); -- -2.32.0 +2.34.1 diff --git a/9999/0202-linux-Use-getdents64-on-non-LFS-readdir.patch b/9999/0202-linux-Use-getdents64-on-non-LFS-readdir.patch index 90910a6..762a943 100644 --- a/9999/0202-linux-Use-getdents64-on-non-LFS-readdir.patch +++ b/9999/0202-linux-Use-getdents64-on-non-LFS-readdir.patch @@ -1,7 +1,7 @@ -From 5180512e6c81b1b0423572594983c74c499b7e1e Mon Sep 17 00:00:00 2001 +From 057920ea715c979638045d2966d6a7c616f3cbc2 Mon Sep 17 00:00:00 2001 From: Adhemerval Zanella Date: Tue, 20 Oct 2020 13:37:15 -0300 -Subject: [PATCH 2/7] linux: Use getdents64 on non-LFS readdir +Subject: [PATCH 08/14] linux: Use getdents64 on non-LFS readdir The opendir allocates a translation buffer to be used to return the non-LFS readdir entry. The obtained dirent64 struct is translated @@ -19,7 +19,7 @@ Checked on x86_64-linux-gnu and i686-linux-gnu. 4 files changed, 101 insertions(+), 26 deletions(-) diff --git a/sysdeps/unix/sysv/linux/closedir.c b/sysdeps/unix/sysv/linux/closedir.c -index 4bb5274b00..1f71445ad9 100644 +index eee0193fc4..d876d49d78 100644 --- a/sysdeps/unix/sysv/linux/closedir.c +++ b/sysdeps/unix/sysv/linux/closedir.c @@ -47,6 +47,10 @@ __closedir (DIR *dirp) @@ -34,7 +34,7 @@ index 4bb5274b00..1f71445ad9 100644 return __close_nocancel (fd); diff --git a/sysdeps/unix/sysv/linux/dirstream.h b/sysdeps/unix/sysv/linux/dirstream.h -index b5e1db8db0..64b1495ba0 100644 +index a0d8acf08d..064273cc31 100644 --- a/sysdeps/unix/sysv/linux/dirstream.h +++ b/sysdeps/unix/sysv/linux/dirstream.h @@ -41,6 +41,11 @@ struct __dirstream @@ -50,7 +50,7 @@ index b5e1db8db0..64b1495ba0 100644 at an address that is aligned adequately enough to store dirent entries. Using the alignment of "void *" is not diff --git a/sysdeps/unix/sysv/linux/opendir.c b/sysdeps/unix/sysv/linux/opendir.c -index 48f254d169..d7df13575e 100644 +index 9e81d00630..bfd2f382a6 100644 --- a/sysdeps/unix/sysv/linux/opendir.c +++ b/sysdeps/unix/sysv/linux/opendir.c @@ -120,6 +120,27 @@ __alloc_dir (int fd, bool close_fd, int flags, @@ -82,7 +82,7 @@ index 48f254d169..d7df13575e 100644 #if IS_IN (libc) __libc_lock_init (dirp->lock); diff --git a/sysdeps/unix/sysv/linux/readdir.c b/sysdeps/unix/sysv/linux/readdir.c -index c0619ce06f..8647bb0aef 100644 +index 7743f50071..7b4571839e 100644 --- a/sysdeps/unix/sysv/linux/readdir.c +++ b/sysdeps/unix/sysv/linux/readdir.c @@ -21,42 +21,87 @@ @@ -200,5 +200,5 @@ index c0619ce06f..8647bb0aef 100644 struct dirent * -- -2.32.0 +2.34.1 diff --git a/9999/0203-linux-Set-internal-DIR-filepos-as-off64_t-BZ-23960-B.patch b/9999/0203-linux-Set-internal-DIR-filepos-as-off64_t-BZ-23960-B.patch index 06e8d14..bde1527 100644 --- a/9999/0203-linux-Set-internal-DIR-filepos-as-off64_t-BZ-23960-B.patch +++ b/9999/0203-linux-Set-internal-DIR-filepos-as-off64_t-BZ-23960-B.patch @@ -1,8 +1,8 @@ -From 7d2845e6ed10f2109d2e0f6432932b6693f0037d Mon Sep 17 00:00:00 2001 +From 0afb8fa52cded9c332c31c7a1e62b9f2b04acdf8 Mon Sep 17 00:00:00 2001 From: Adhemerval Zanella Date: Mon, 13 Apr 2020 18:09:20 -0300 -Subject: [PATCH 3/7] linux: Set internal DIR filepos as off64_t [BZ #23960, BZ - #24050] +Subject: [PATCH 09/14] linux: Set internal DIR filepos as off64_t [BZ #23960, + BZ #24050] It allows to obtain the expected entry offset on telldir and set it correctly on seekdir on platforms where long int is smaller @@ -39,7 +39,7 @@ and arm-linux-gnueabihf. create mode 100644 sysdeps/unix/sysv/linux/telldir.h diff --git a/dirent/Makefile b/dirent/Makefile -index afc7226a5b..c7f046b3f7 100644 +index b80f6a73ea..65119db578 100644 --- a/dirent/Makefile +++ b/dirent/Makefile @@ -31,7 +31,7 @@ routines := opendir closedir readdir readdir_r rewinddir \ @@ -216,7 +216,7 @@ index 0000000000..3e01b361e5 + +#include diff --git a/sysdeps/unix/sysv/linux/closedir.c b/sysdeps/unix/sysv/linux/closedir.c -index 1f71445ad9..1845c48be0 100644 +index d876d49d78..8e5669963c 100644 --- a/sysdeps/unix/sysv/linux/closedir.c +++ b/sysdeps/unix/sysv/linux/closedir.c @@ -43,6 +43,10 @@ __closedir (DIR *dirp) @@ -231,7 +231,7 @@ index 1f71445ad9..1845c48be0 100644 __libc_lock_fini (dirp->lock); #endif diff --git a/sysdeps/unix/sysv/linux/dirstream.h b/sysdeps/unix/sysv/linux/dirstream.h -index 64b1495ba0..1a3362fda6 100644 +index 064273cc31..a284292cb2 100644 --- a/sysdeps/unix/sysv/linux/dirstream.h +++ b/sysdeps/unix/sysv/linux/dirstream.h @@ -21,6 +21,7 @@ @@ -262,7 +262,7 @@ index 64b1495ba0..1a3362fda6 100644 /* Directory block. We must make sure that this block starts at an address that is aligned adequately enough to store diff --git a/sysdeps/unix/sysv/linux/opendir.c b/sysdeps/unix/sysv/linux/opendir.c -index d7df13575e..56365f9da5 100644 +index bfd2f382a6..9a0b7ab4c4 100644 --- a/sysdeps/unix/sysv/linux/opendir.c +++ b/sysdeps/unix/sysv/linux/opendir.c @@ -150,6 +150,9 @@ __alloc_dir (int fd, bool close_fd, int flags, @@ -276,7 +276,7 @@ index d7df13575e..56365f9da5 100644 return dirp; } diff --git a/sysdeps/unix/sysv/linux/readdir.c b/sysdeps/unix/sysv/linux/readdir.c -index 8647bb0aef..b26d2756b9 100644 +index 7b4571839e..94ac4cbae7 100644 --- a/sysdeps/unix/sysv/linux/readdir.c +++ b/sysdeps/unix/sysv/linux/readdir.c @@ -17,6 +17,7 @@ @@ -288,7 +288,7 @@ index 8647bb0aef..b26d2756b9 100644 #if !_DIRENT_MATCHES_DIRENT64 #include diff --git a/sysdeps/unix/sysv/linux/rewinddir.c b/sysdeps/unix/sysv/linux/rewinddir.c -index 5b68db7167..74b336bfd8 100644 +index b1e8259703..0194d29e38 100644 --- a/sysdeps/unix/sysv/linux/rewinddir.c +++ b/sysdeps/unix/sysv/linux/rewinddir.c @@ -33,6 +33,11 @@ __rewinddir (DIR *dirp) @@ -304,7 +304,7 @@ index 5b68db7167..74b336bfd8 100644 __libc_lock_unlock (dirp->lock); #endif diff --git a/sysdeps/unix/sysv/linux/seekdir.c b/sysdeps/unix/sysv/linux/seekdir.c -index b128ae8e76..2fcf689dc0 100644 +index f4e1a9f8e0..0c3e58a2ed 100644 --- a/sysdeps/unix/sysv/linux/seekdir.c +++ b/sysdeps/unix/sysv/linux/seekdir.c @@ -22,14 +22,40 @@ @@ -354,7 +354,7 @@ index b128ae8e76..2fcf689dc0 100644 __libc_lock_unlock (dirp->lock); } diff --git a/sysdeps/unix/sysv/linux/telldir.c b/sysdeps/unix/sysv/linux/telldir.c -index b184db8d2c..a0eb1efeff 100644 +index b60b231e48..874905489f 100644 --- a/sysdeps/unix/sysv/linux/telldir.c +++ b/sysdeps/unix/sysv/linux/telldir.c @@ -18,16 +18,59 @@ @@ -490,5 +490,5 @@ index 0000000000..7c45886341 + +#endif /* _TELLDIR_H */ -- -2.32.0 +2.34.1 diff --git a/9999/0204-linux-Add-__readdir64_unlocked.patch b/9999/0204-linux-Add-__readdir64_unlocked.patch index 29609dd..839b18d 100644 --- a/9999/0204-linux-Add-__readdir64_unlocked.patch +++ b/9999/0204-linux-Add-__readdir64_unlocked.patch @@ -1,7 +1,7 @@ -From 1524804c8133564c204340a0d618f04c585d7706 Mon Sep 17 00:00:00 2001 +From 333f932faec29e5c9238d3d1f8584acc25d986c0 Mon Sep 17 00:00:00 2001 From: Adhemerval Zanella Date: Mon, 13 Apr 2020 08:35:40 -0300 -Subject: [PATCH 4/7] linux: Add __readdir64_unlocked +Subject: [PATCH 10/14] linux: Add __readdir64_unlocked And use it on readdir_r implementation. @@ -25,7 +25,7 @@ index d7567f5e86..0c6715d0e4 100644 libc_hidden_proto (__readdir64) extern int __readdir_r (DIR *__dirp, struct dirent *__entry, diff --git a/sysdeps/unix/sysv/linux/readdir64.c b/sysdeps/unix/sysv/linux/readdir64.c -index 3aea0b1df1..5519487ede 100644 +index d990a36e4e..c4539f6d96 100644 --- a/sysdeps/unix/sysv/linux/readdir64.c +++ b/sysdeps/unix/sysv/linux/readdir64.c @@ -28,14 +28,10 @@ @@ -66,7 +66,7 @@ index 3aea0b1df1..5519487ede 100644 __libc_lock_unlock (dirp->lock); #endif diff --git a/sysdeps/unix/sysv/linux/readdir64_r.c b/sysdeps/unix/sysv/linux/readdir64_r.c -index 073a6453d1..058d401279 100644 +index afd7f9af0f..32962a176a 100644 --- a/sysdeps/unix/sysv/linux/readdir64_r.c +++ b/sysdeps/unix/sysv/linux/readdir64_r.c @@ -32,89 +32,43 @@ __readdir64_r (DIR *dirp, struct dirent64 *entry, struct dirent64 **result) @@ -177,5 +177,5 @@ index 073a6453d1..058d401279 100644 -- -2.32.0 +2.34.1 diff --git a/9999/0205-linux-Add-__old_readdir64_unlocked.patch b/9999/0205-linux-Add-__old_readdir64_unlocked.patch index c1ccb61..42c9d1d 100644 --- a/9999/0205-linux-Add-__old_readdir64_unlocked.patch +++ b/9999/0205-linux-Add-__old_readdir64_unlocked.patch @@ -1,7 +1,7 @@ -From f16c3815c6ad46450d6e58e179ddf494c52a98a4 Mon Sep 17 00:00:00 2001 +From b69d95b17a828f5f39b577c00ff0d02e4c0a5da6 Mon Sep 17 00:00:00 2001 From: Adhemerval Zanella Date: Tue, 14 Apr 2020 11:14:22 -0300 -Subject: [PATCH 5/7] linux: Add __old_readdir64_unlocked +Subject: [PATCH 11/14] linux: Add __old_readdir64_unlocked And use it __old_readdir64_r. @@ -13,7 +13,7 @@ Checked on i686-linux-gnu. 3 files changed, 35 insertions(+), 67 deletions(-) diff --git a/sysdeps/unix/sysv/linux/olddirent.h b/sysdeps/unix/sysv/linux/olddirent.h -index 3e672d47f5..42ab593c4d 100644 +index 9a22609177..00c84b9521 100644 --- a/sysdeps/unix/sysv/linux/olddirent.h +++ b/sysdeps/unix/sysv/linux/olddirent.h @@ -32,6 +32,8 @@ struct __old_dirent64 @@ -26,7 +26,7 @@ index 3e672d47f5..42ab593c4d 100644 struct __old_dirent64 **__result); extern __ssize_t __old_getdents64 (int __fd, char *__buf, size_t __nbytes) diff --git a/sysdeps/unix/sysv/linux/readdir64.c b/sysdeps/unix/sysv/linux/readdir64.c -index 5519487ede..8869e49150 100644 +index c4539f6d96..dbf6a8c54d 100644 --- a/sysdeps/unix/sysv/linux/readdir64.c +++ b/sysdeps/unix/sysv/linux/readdir64.c @@ -101,15 +101,11 @@ versioned_symbol (libc, __readdir64, readdir64, GLIBC_2_2); @@ -69,7 +69,7 @@ index 5519487ede..8869e49150 100644 __libc_lock_unlock (dirp->lock); #endif diff --git a/sysdeps/unix/sysv/linux/readdir64_r.c b/sysdeps/unix/sysv/linux/readdir64_r.c -index 058d401279..e4a0baeaf7 100644 +index 32962a176a..699d120b76 100644 --- a/sysdeps/unix/sysv/linux/readdir64_r.c +++ b/sysdeps/unix/sysv/linux/readdir64_r.c @@ -91,89 +91,44 @@ __old_readdir64_r (DIR *dirp, struct __old_dirent64 *entry, @@ -180,5 +180,5 @@ index 058d401279..e4a0baeaf7 100644 compat_symbol (libc, __old_readdir64_r, readdir64_r, GLIBC_2_1); -- -2.32.0 +2.34.1 diff --git a/9999/0206-linux-Use-getdents64-on-readdir64-compat-implementat.patch b/9999/0206-linux-Use-getdents64-on-readdir64-compat-implementat.patch index 90f5d89..889266d 100644 --- a/9999/0206-linux-Use-getdents64-on-readdir64-compat-implementat.patch +++ b/9999/0206-linux-Use-getdents64-on-readdir64-compat-implementat.patch @@ -1,7 +1,8 @@ -From 46b9383118182cb2ac2e81637e00fde6c21097bb Mon Sep 17 00:00:00 2001 +From a5aee8e0e844f9f9cf8df0a41e67cddf8de7540f Mon Sep 17 00:00:00 2001 From: Adhemerval Zanella Date: Tue, 20 Oct 2020 16:00:43 -0300 -Subject: [PATCH 6/7] linux: Use getdents64 on readdir64 compat implementation +Subject: [PATCH 12/14] linux: Use getdents64 on readdir64 compat + implementation It uses a similar strategy from the non-LFS readdir that also uses getdents64 internally and uses a translation buffer to return @@ -18,7 +19,7 @@ Checked on i686-linux-gnu. 4 files changed, 79 insertions(+), 135 deletions(-) diff --git a/sysdeps/unix/sysv/linux/getdents64.c b/sysdeps/unix/sysv/linux/getdents64.c -index 6323e003b3..38285e9f4b 100644 +index 510a586859..92481526c5 100644 --- a/sysdeps/unix/sysv/linux/getdents64.c +++ b/sysdeps/unix/sysv/linux/getdents64.c @@ -36,97 +36,4 @@ weak_alias (__getdents64, getdents64) @@ -120,7 +121,7 @@ index 6323e003b3..38285e9f4b 100644 -# endif /* SHLIB_COMPAT(libc, GLIBC_2_1, GLIBC_2_2) */ #endif /* _DIRENT_MATCHES_DIRENT64 */ diff --git a/sysdeps/unix/sysv/linux/olddirent.h b/sysdeps/unix/sysv/linux/olddirent.h -index 42ab593c4d..b7c51d5ccc 100644 +index 00c84b9521..68aafd7c02 100644 --- a/sysdeps/unix/sysv/linux/olddirent.h +++ b/sysdeps/unix/sysv/linux/olddirent.h @@ -36,8 +36,6 @@ extern struct __old_dirent64 *__old_readdir64_unlocked (DIR *__dirp) @@ -133,7 +134,7 @@ index 42ab593c4d..b7c51d5ccc 100644 struct __old_dirent64 *** __namelist, int (*__selector) (const struct __old_dirent64 *), diff --git a/sysdeps/unix/sysv/linux/opendir.c b/sysdeps/unix/sysv/linux/opendir.c -index 56365f9da5..de722c98e1 100644 +index 9a0b7ab4c4..df40b0a64e 100644 --- a/sysdeps/unix/sysv/linux/opendir.c +++ b/sysdeps/unix/sysv/linux/opendir.c @@ -23,6 +23,11 @@ @@ -166,7 +167,7 @@ index 56365f9da5..de722c98e1 100644 dirp->tbuffer = malloc (tbuffer_size); if (dirp->tbuffer == NULL) diff --git a/sysdeps/unix/sysv/linux/readdir64.c b/sysdeps/unix/sysv/linux/readdir64.c -index 8869e49150..7ecc8c1b16 100644 +index dbf6a8c54d..4b41299c6c 100644 --- a/sysdeps/unix/sysv/linux/readdir64.c +++ b/sysdeps/unix/sysv/linux/readdir64.c @@ -99,57 +99,83 @@ versioned_symbol (libc, __readdir64, readdir64, GLIBC_2_2); @@ -293,5 +294,5 @@ index 8869e49150..7ecc8c1b16 100644 attribute_compat_text_section -- -2.32.0 +2.34.1 diff --git a/9999/0207-dirent-Deprecate-getdirentries.patch b/9999/0207-dirent-Deprecate-getdirentries.patch index f01ab67..42e3002 100644 --- a/9999/0207-dirent-Deprecate-getdirentries.patch +++ b/9999/0207-dirent-Deprecate-getdirentries.patch @@ -1,7 +1,7 @@ -From 7b990b41ea23c0464c60e6a9f0707adfb46ae587 Mon Sep 17 00:00:00 2001 +From 96f2c068b5aa972b23cfe25d3c8042fed1056607 Mon Sep 17 00:00:00 2001 From: Adhemerval Zanella Date: Fri, 17 Apr 2020 09:59:51 -0300 -Subject: [PATCH 7/7] dirent: Deprecate getdirentries +Subject: [PATCH 13/14] dirent: Deprecate getdirentries The interface has some issues: @@ -23,12 +23,12 @@ The idea is to eventually move the symbols to compat ones. 3 files changed, 20 insertions(+), 4 deletions(-) diff --git a/NEWS b/NEWS -index d9b344027b..45e51ae810 100644 +index 626eeabf5d..ed5b7b641f 100644 --- a/NEWS +++ b/NEWS -@@ -7,6 +7,12 @@ using `glibc' in the "product" field. - - Version 2.34.1 +@@ -25,6 +25,12 @@ Security related changes: + + [Add security related changes here] +Deprecated and removed features, and other changes affecting compatibility: + @@ -38,9 +38,9 @@ index d9b344027b..45e51ae810 100644 + The following bugs are resolved with this release: - [12889] nptl: Fix race between pthread_kill and thread exit + [The release manager will add the list generated by diff --git a/dirent/dirent.h b/dirent/dirent.h -index 1d1fab7e55..eed030b379 100644 +index 218f1ed44b..b2737bc53b 100644 --- a/dirent/dirent.h +++ b/dirent/dirent.h @@ -348,29 +348,35 @@ extern int alphasort64 (const struct dirent64 **__e1, @@ -84,10 +84,10 @@ index 1d1fab7e55..eed030b379 100644 #endif /* Use misc. */ diff --git a/sysdeps/unix/sysv/linux/Makefile b/sysdeps/unix/sysv/linux/Makefile -index 76ad06361c..2bfb6e254b 100644 +index 7122f55975..c9b43898b2 100644 --- a/sysdeps/unix/sysv/linux/Makefile +++ b/sysdeps/unix/sysv/linux/Makefile -@@ -314,6 +314,10 @@ tests += tst-getdents64 +@@ -338,6 +338,10 @@ tests += tst-getdents64 ifeq ($(have-GLIBC_2.1.3)$(build-shared),yesyes) tests += tst-readdir64-compat endif @@ -99,5 +99,5 @@ index 76ad06361c..2bfb6e254b 100644 ifeq ($(subdir),nis) -- -2.32.0 +2.34.1 diff --git a/9999/0301-Fix-segfault-in-getpwuid-when-stat-fails-BZ-28752.patch b/9999/0301-Fix-segfault-in-getpwuid-when-stat-fails-BZ-28752.patch index 85cb24a..48036b3 100644 --- a/9999/0301-Fix-segfault-in-getpwuid-when-stat-fails-BZ-28752.patch +++ b/9999/0301-Fix-segfault-in-getpwuid-when-stat-fails-BZ-28752.patch @@ -1,7 +1,7 @@ -From aa1d70e59ee6ad1503bc853da75afb35d51381be Mon Sep 17 00:00:00 2001 +From 7032e8bf35b229ff759286435f1f51b5588b56ed Mon Sep 17 00:00:00 2001 From: Adhemerval Zanella Date: Sat, 12 Feb 2022 19:40:58 +0100 -Subject: [PATCH] Fix segfault in getpwuid when stat fails (BZ #28752) +Subject: [PATCH 14/14] Fix segfault in getpwuid when stat fails (BZ #28752) [azanella proposed this patch to sam when discussing the issue, but it's not anywhere upstream yet- dilfridge] @@ -10,14 +10,14 @@ Bug: https://sourceware.org/bugzilla/show_bug.cgi?id=28752 Bug: https://bugs.gentoo.org/828070 (cherry picked from commit 1bcdcd4fec9bfe2f1d3fef67a43825903f6a5f2b) --- - nss/nss_database.c | 10 +++++----- - 1 file changed, 5 insertions(+), 5 deletions(-) + nss/nss_database.c | 9 +++++---- + 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/nss/nss_database.c b/nss/nss_database.c -index d56c5b798d..35846d7ebc 100644 +index d56c5b798d..133682b858 100644 --- a/nss/nss_database.c +++ b/nss/nss_database.c -@@ -424,11 +424,11 @@ nss_database_check_reload_and_get (struct nss_database_state *local, +@@ -424,10 +424,11 @@ nss_database_check_reload_and_get (struct nss_database_state *local, errors here are very unlikely, but the chance that we're entering a container is also very unlikely, so we err on the side of both very unlikely things not happening at the same time. */ @@ -25,15 +25,14 @@ index d56c5b798d..35846d7ebc 100644 - || (local->root_ino != 0 - && (str.st_ino != local->root_ino - || str.st_dev != local->root_dev))) -- { + if (__stat64_time64 ("/", &str) != 0) + return false; + + if (local->root_ino != 0 && (str.st_ino != local->root_ino + || str.st_dev != local->root_dev)) + { /* Change detected; disable reloading and return current state. */ atomic_store_release (&local->data.reload_disabled, 1); - *result = local->data.services[database_index]; -- 2.34.1 -- cgit v1.2.3-65-gdbad