diff --git a/glibc-rh819430.patch b/glibc-rh819430.patch deleted file mode 100644 index 6152926..0000000 --- a/glibc-rh819430.patch +++ /dev/null @@ -1,93 +0,0 @@ -Short description: fnmatch() fails with MBCS. -Author(s): Fedora glibc team -Origin: PATCH -Bug-RHEL: #819430, #826149, #826151 -Bug-Upstream: #14185 -Upstream status: not-submitted - -fnmatch() fails when '*' wildcard is applied on the file name -containing multi-byte character(s) - -This needs to be reviewed thoroughly and go upstream with a -new test case. - - -diff --git a/posix/fnmatch.c b/posix/fnmatch.c -index 5896812c966ac7c6..63df3dae0911030f 100644 ---- a/posix/fnmatch.c -+++ b/posix/fnmatch.c -@@ -237,6 +237,7 @@ fnmatch (const char *pattern, const char *string, int flags) - { - if (__glibc_unlikely (MB_CUR_MAX != 1)) - { -+ const char *orig_pattern = pattern; - mbstate_t ps; - size_t n; - const char *p; -@@ -256,10 +257,8 @@ fnmatch (const char *pattern, const char *string, int flags) - alloca_used); - n = mbsrtowcs (wpattern, &p, n + 1, &ps); - if (__glibc_unlikely (n == (size_t) -1)) -- /* Something wrong. -- XXX Do we have to set 'errno' to something which mbsrtows hasn't -- already done? */ -- return -1; -+ /* Something wrong: Fall back to single byte matching. */ -+ goto try_singlebyte; - if (p) - { - memset (&ps, '\0', sizeof (ps)); -@@ -271,10 +270,8 @@ fnmatch (const char *pattern, const char *string, int flags) - prepare_wpattern: - n = mbsrtowcs (NULL, &pattern, 0, &ps); - if (__glibc_unlikely (n == (size_t) -1)) -- /* Something wrong. -- XXX Do we have to set 'errno' to something which mbsrtows hasn't -- already done? */ -- return -1; -+ /* Something wrong: Fall back to single byte matching. */ -+ goto try_singlebyte; - if (__glibc_unlikely (n >= (size_t) -1 / sizeof (wchar_t))) - { - __set_errno (ENOMEM); -@@ -297,14 +294,8 @@ fnmatch (const char *pattern, const char *string, int flags) - alloca_used); - n = mbsrtowcs (wstring, &p, n + 1, &ps); - if (__glibc_unlikely (n == (size_t) -1)) -- { -- /* Something wrong. -- XXX Do we have to set 'errno' to something which -- mbsrtows hasn't already done? */ -- free_return: -- free (wpattern_malloc); -- return -1; -- } -+ /* Something wrong: Fall back to single byte matching. */ -+ goto free_and_try_singlebyte; - if (p) - { - memset (&ps, '\0', sizeof (ps)); -@@ -316,10 +307,8 @@ fnmatch (const char *pattern, const char *string, int flags) - prepare_wstring: - n = mbsrtowcs (NULL, &string, 0, &ps); - if (__glibc_unlikely (n == (size_t) -1)) -- /* Something wrong. -- XXX Do we have to set 'errno' to something which mbsrtows hasn't -- already done? */ -- goto free_return; -+ /* Something wrong: Fall back to singlebyte matching. */ -+ goto free_and_try_singlebyte; - if (__glibc_unlikely (n >= (size_t) -1 / sizeof (wchar_t))) - { - free (wpattern_malloc); -@@ -346,6 +335,10 @@ fnmatch (const char *pattern, const char *string, int flags) - free (wpattern_malloc); - - return res; -+ free_and_try_singlebyte: -+ free(wpattern_malloc); -+ try_singlebyte: -+ pattern = orig_pattern; - } - - return internal_fnmatch (pattern, string, string + strlen (string), diff --git a/glibc.spec b/glibc.spec index bd3fb95..35d97b2 100644 --- a/glibc.spec +++ b/glibc.spec @@ -1,4 +1,4 @@ -%define glibcsrcdir glibc-2.33.9000-73-ge9e7f24543 +%define glibcsrcdir glibc-2.33.9000-114-gf01a61e138 %define glibcversion 2.33.9000 # Pre-release tarballs are pulled in from git using a command that is # effectively: @@ -96,7 +96,7 @@ Summary: The GNU libc libraries Name: glibc Version: %{glibcversion} -Release: 2%{?dist} +Release: 3%{?dist} # In general, GPLv2+ is used by programs, LGPLv2+ is used for # libraries. @@ -145,7 +145,6 @@ Patch4: glibc-fedora-linux-tcsetattr.patch Patch6: glibc-fedora-localedef.patch Patch8: glibc-fedora-manual-dircategory.patch Patch9: glibc-rh827510.patch -Patch12: glibc-rh819430.patch Patch13: glibc-fedora-localedata-rh61908.patch Patch15: glibc-rh1070416.patch Patch16: glibc-nscd-sysconfig.patch @@ -2290,6 +2289,52 @@ fi %files -f compat-libpthread-nonshared.filelist -n compat-libpthread-nonshared %changelog +* Wed Mar 03 2021 Arjun Shankar - 2.33.9000-3 +- Drop glibc-rh819430.patch; fixed upstream. +- Auto-sync with upstream branch master, + commit f01a61e13872109b3b233158ab664364bd1879bc: +- i386: Regenerate ulps +- x86: Add CPU-specific diagnostics to ld.so --list-diagnostics +- x86: Automate generation of PREFERRED_FEATURE_INDEX_1 bitfield +- ld.so: Implement the --list-diagnostics option +- powerpc: Update libm-test-ulps +- tst: Add test for utimes +- tst: Add test for utime +- tst: Add test for futimens +- nptl: __libc_cleanup_push/__libc_cleanup_pop require -fexceptions +- elf: Build __dl_iterate_phdr with unwinding support [BZ #27498] +- nptl: Use for accessing the libgcc_s unwinder +- Implement _Unwind_Resume in libc on top of +- Move sysdeps/gnu/unwind-resume.c to sysdeps/generic/unwind-resume.c +- __frame_state_for: Use for unwinder access +- sparc: Implement backtrace on top +- m68k: Implement backtrace on top of +- i386: Implement backtrace on top of +- arm: Implement backtrace on top of +- backtrace: Implement on top of +- Implement for dynamically loading the libgcc_s unwinder +- Correct buffer end pointer in IO_wdefault_doallocate (BZ #26874) +- aarch64: update ulps. +- Add inputs that generate larger error bounds +- Reduce the statically linked startup code [BZ #23323] +- posix: Falling back to non wide mode in case of encoding error [BZ #14185] +- nptl: Move elision implementations into libc +- NEWS: Add missing bug closures +- added rt to malloc/Depend [BZ #27132] +- x86: Use x86/nptl/pthreaddef.h +- nptl: Move futex-internal into libc +- nptl: Move lowlevellock into libc [BZ #15648] +- nptl: Move futex-internal.c into main nptl directory +- nptl: Reformat Versions +- nptl: Split libpthread-routines into one routine per line +- x86: Remove unused variables for raw cache sizes from cacheinfo.h +- Use Linux 5.11 in build-many-glibcs.py. +- : Correct x86_cpu_TBM +- x86_64/clone.S: Upate comments +- i386/clone.S: Remove redundant EBX load +- aarch64: Remove the unused __read_tp symbol +- build-many-glibcs.py: Use make -O for more consistent log output + * Sun Feb 21 2021 Carlos O'Donell - 2.33.9000-2 - Auto-sync with upstream branch master, commit e9e7f24543e6d1b0a31641f144697e261df6ccd7: diff --git a/sources b/sources index 6a8281b..575cd9f 100644 --- a/sources +++ b/sources @@ -1,3 +1 @@ -SHA512 (glibc-2.32.9000-573-gdf359a25ba.tar.xz) = d5457c1756810308d4ec643c4f1a19a575656b9617db34909848c9ed877d09045bc1bd447189dccce59bcbe905bac56154e7a5896c9ebcb9b89f0a22643f816f -SHA512 (glibc-2.33.9000-48-g228f30ab47.tar.xz) = f98f3c5770ad68282dd045ad2f8c5e747a5b8b8803340baf1967a6a39ccaaa14adcb0c959556056e6c49a1308d987d2b45133986ec9396249667f9a6a29e21be -SHA512 (glibc-2.33.9000-73-ge9e7f24543.tar.xz) = 4cee5befd3652dd1a9ad3b1e0dfffef9dcd3dd7a353da775929d58cfb08d9bf3fa098741818572f3edcf62d11c79e91bc42482fd86f00c12bb25d30d452bd964 +SHA512 (glibc-2.33.9000-114-gf01a61e138.tar.xz) = e32129b3255cadfda5c6bca4bf1c6a5d0bfd8e717c476457e011e320afd373ffb96bfc874b4159f4a6954b331151ea8aa45efc4d977f1dff2040394bcc898185