Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package glibc for openSUSE:Factory checked in at 2023-08-12 15:05:35 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/glibc (Old) and /work/SRC/openSUSE:Factory/.glibc.new.11712 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "glibc" Sat Aug 12 15:05:35 2023 rev:277 rq:1102128 version:2.38 Changes: -------- --- /work/SRC/openSUSE:Factory/glibc/glibc.changes 2023-07-13 17:17:40.664808960 +0200 +++ /work/SRC/openSUSE:Factory/.glibc.new.11712/glibc.changes 2023-08-12 15:05:36.866279675 +0200 @@ -1,0 +2,34 @@ +Wed Aug 2 10:50:32 UTC 2023 - Andreas Schwab <sch...@suse.de> + +- Update to glibc 2.38 + * When C2X features are enabled and the base argument is 0 or 2, the + following functions support binary integers prefixed by 0b or 0B as + input + * PRIb*, PRIB* and SCNb* macros from C2X have been added to + <inttypes.h>. + * printf-family functions now support the wN format length modifiers for + arguments of type intN_t, int_leastN_t, uintN_t or uint_leastN_t + and the wfN format + length modifiers for arguments of type int_fastN_t or uint_fastN_t, as + specified in draft ISO C2X + * A new tunable, glibc.pthread.stack_hugetlb, can be used to disable + Transparent Huge Pages (THP) in stack allocation at pthread_create + * Vector math library libmvec support has been added to AArch64 + * The strlcpy and strlcat functions have been added + * CVE-2023-25139: When the printf family of functions is called with a + format specifier that uses an <apostrophe> (enable grouping) and a + minimum width specifier, the resulting output could be larger than + reasonably expected by a caller that computed a tight bound on the + buffer size +- Enable build with _FORTIFY_SOURCE +- glibc-2.3.90-langpackdir.diff: avoid reference to __strcpy_chk +- iconv-error-verbosity.patch: iconv: restore verbosity with unrecognized + encoding names (BZ #30694) +- printf-grouping.patch, strftime-time64.patch, + getlogin-no-loginuid.patch, fix-locking-in-_IO_cleanup.patch, + gshadow-erange-rhandling.patch, system-sigchld-block.patch, + gmon-buffer-alloc.patch, check-pf-cancel-handler.patch, + powerpc64-fcntl-lock.patch, realloc-limit-chunk-reuse.patch, + dl-find-object-return.patch; Removed + +------------------------------------------------------------------- Old: ---- check-pf-cancel-handler.patch dl-find-object-return.patch fix-locking-in-_IO_cleanup.patch getlogin-no-loginuid.patch glibc-2.37.tar.xz glibc-2.37.tar.xz.sig gmon-buffer-alloc.patch gshadow-erange-rhandling.patch powerpc64-fcntl-lock.patch printf-grouping.patch realloc-limit-chunk-reuse.patch strftime-time64.patch system-sigchld-block.patch New: ---- glibc-2.38.tar.xz glibc-2.38.tar.xz.sig iconv-error-verbosity.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ glibc.spec ++++++ --- /var/tmp/diff_new_pack.SJovMI/_old 2023-08-12 15:05:38.758291897 +0200 +++ /var/tmp/diff_new_pack.SJovMI/_new 2023-08-12 15:05:38.762291924 +0200 @@ -49,7 +49,7 @@ %bcond_with usrmerged %endif -%if %{gcc_version} < 12 +%if 0%{?gcc_version} < 12 %define with_gcc 12 %endif @@ -141,10 +141,10 @@ Summary: Standard Shared Libraries (from the GNU C Library) License: GPL-2.0-or-later AND LGPL-2.1-or-later AND LGPL-2.1-or-later WITH GCC-exception-2.0 Group: System/Libraries -Version: 2.37 +Version: 2.38 Release: 0 %if %{without snapshot} -%define git_id a704fd9a13 +%define git_id 36f2487f13 %define libversion %version %else %define git_id %(echo %version | sed 's/.*\.g//') @@ -289,28 +289,8 @@ ### # Patches from upstream ### -# PATCH-FIX-UPSTREAM Account for grouping in printf width (BZ #30068) -Patch1000: printf-grouping.patch -# PATCH-FIX-UPSTREAM Use 64-bit time_t interfaces in strftime and strptime (BZ #30053) -Patch1001: strftime-time64.patch -# PATCH-FIX-UPSTREAM getlogin_r: fix missing fallback if loginuid is unset (BZ #30235) -Patch1002: getlogin-no-loginuid.patch -# PATCH-FIX-UPSTREAM Always to locking when accessing streams (BZ #15142) -Patch1003: fix-locking-in-_IO_cleanup.patch -# PATCH-FIX-UPSTREAM gshadow: Matching sgetsgent, sgetsgent_r ERANGE handling (BZ #30151) -Patch1004: gshadow-erange-rhandling.patch -# PATCH-FIX-UPSTREAM posix: Fix system blocks SIGCHLD erroneously (BZ #30163) -Patch1005: system-sigchld-block.patch -# PATCH-FIX-UPSTREAM gmon: Fix allocated buffer overflow (BZ #29444) -Patch1006: gmon-buffer-alloc.patch -# PATCH-FIX-UPSTREAM __check_pf: Add a cancellation cleanup handler (BZ #20975) -Patch1007: check-pf-cancel-handler.patch -# PATCH-FIX-UPSTREAM io: Fix F_GETLK, F_SETLK, and F_SETLKW for powerpc64 -Patch1008: powerpc64-fcntl-lock.patch -# PATCH-FIX-UPSTREAM realloc: Limit chunk reuse to only growing requests (BZ #30579) -Patch1009: realloc-limit-chunk-reuse.patch -# PATCH-FIX-UPSTREAM elf: _dl_find_object may return 1 during early startup (BZ #30515) -Patch1010: dl-find-object-return.patch +# PATCH-FIX-OPENSUSE iconv: restore verbosity with unrecognized encoding names (BZ #30694) +Patch1000: iconv-error-verbosity.patch ### # Patches awaiting upstream approval @@ -535,16 +515,6 @@ %if %{without snapshot} %patch1000 -p1 -%patch1001 -p1 -%patch1002 -p1 -%patch1003 -p1 -%patch1004 -p1 -%patch1005 -p1 -%patch1006 -p1 -%patch1007 -p1 -%patch1008 -p1 -%patch1009 -p1 -%patch1010 -p1 %endif %patch2000 -p1 @@ -594,6 +564,7 @@ case $opt in -fstack-protector-*) enable_stack_protector=${opt#-fstack-protector-} ;; -fstack-protector) enable_stack_protector=yes ;; + -D_FORTIFY_SOURCE=*) enable_fortify_source=${opt#-D_FORTIFY_SOURCE=} ;; -ffortify=* | *_FORTIFY_SOURCE*) ;; %if "%flavor" == "i686" *i586*) BuildFlags+=" ${opt/i586/i686}" ;; @@ -707,6 +678,9 @@ --enable-stackguard-randomization \ %endif ${enable_stack_protector:+--enable-stack-protector=$enable_stack_protector} \ +%if !%{build_cross} + ${enable_fortify_source:+--enable-fortify-source=$enable_fortify_source} \ +%endif --enable-tunables \ --enable-kernel=%{enablekernel} \ --with-bugurl=http://bugs.opensuse.org \ @@ -1235,7 +1209,7 @@ %{slibdir}/libc_malloc_debug.so.0 %{slibdir}/libdl.so.2* %{slibdir}/libm.so.6* -%ifarch x86_64 +%ifarch x86_64 aarch64 %{slibdir}/libmvec.so.1 %endif %{slibdir}/libnsl.so.1 @@ -1297,7 +1271,7 @@ %{_libdir}/libc.so %{_libdir}/libc_malloc_debug.so %{_libdir}/libm.so -%ifarch x86_64 +%ifarch x86_64 aarch64 %{_libdir}/libmvec.so %endif %{_libdir}/libnss_compat.so @@ -1324,7 +1298,7 @@ %{_libdir}/libanl.a %{_libdir}/libc.a %{_libdir}/libm.a -%ifarch x86_64 +%ifarch x86_64 aarch64 %{_libdir}/libm-%{libversion}.a %{_libdir}/libmvec.a %endif @@ -1375,7 +1349,7 @@ %{_libdir}/libBrokenLocale_p.a %{_libdir}/libanl_p.a %{_libdir}/libm_p.a -%ifarch x86_64 +%ifarch x86_64 aarch64 %{_libdir}/libmvec_p.a %endif %{_libdir}/libpthread_p.a ++++++ glibc-2.3.90-langpackdir.diff ++++++ --- /var/tmp/diff_new_pack.SJovMI/_old 2023-08-12 15:05:38.862292569 +0200 +++ /var/tmp/diff_new_pack.SJovMI/_new 2023-08-12 15:05:38.862292569 +0200 @@ -1,8 +1,8 @@ -Index: glibc-2.27/intl/loadmsgcat.c +Index: glibc-2.38/intl/loadmsgcat.c =================================================================== ---- glibc-2.27.orig/intl/loadmsgcat.c -+++ glibc-2.27/intl/loadmsgcat.c -@@ -796,8 +796,27 @@ _nl_load_domain (struct loaded_l10nfile +--- glibc-2.38.orig/intl/loadmsgcat.c ++++ glibc-2.38/intl/loadmsgcat.c +@@ -796,8 +796,26 @@ _nl_load_domain (struct loaded_l10nfile if (domain_file->filename == NULL) goto out; @@ -10,17 +10,16 @@ - fd = open (domain_file->filename, O_RDONLY | O_BINARY); + /* Replace /locale/ with /usr/share/locale-langpack/ */ + const char *langpackdir = "/usr/share/locale-langpack/"; -+ char *filename_langpack = malloc (strlen (domain_file->filename) + -+ strlen (langpackdir)); ++ char *filename_langpack = malloc (strlen (domain_file->filename) ++ + strlen (langpackdir)); + if (filename_langpack != NULL) + { + char *p = strstr (domain_file->filename, "/locale/"); + if (p != NULL) -+ { -+ strcpy (filename_langpack, langpackdir); -+ strcpy (&filename_langpack[strlen (langpackdir)], p + 8); -+ fd = open (filename_langpack, O_RDONLY | O_BINARY); -+ } ++ { ++ strcpy (__stpcpy (filename_langpack, langpackdir), p + 8); ++ fd = open (filename_langpack, O_RDONLY | O_BINARY); ++ } + + free (filename_langpack); + } ++++++ glibc-2.37.tar.xz -> glibc-2.38.tar.xz ++++++ /work/SRC/openSUSE:Factory/glibc/glibc-2.37.tar.xz /work/SRC/openSUSE:Factory/.glibc.new.11712/glibc-2.38.tar.xz differ: char 27, line 1 ++++++ iconv-error-verbosity.patch ++++++ >From fc72b6d7d818ab2868920af956d1542d03342a4d Mon Sep 17 00:00:00 2001 From: Andreas Schwab <sch...@suse.de> Date: Tue, 1 Aug 2023 17:01:37 +0200 Subject: [PATCH] iconv: restore verbosity with unrecognized encoding names (bug 30694) Commit 91927b7c76 ("Rewrite iconv option parsing [BZ #19519]") changed the iconv program to call __gconv_open directly instead of the iconv_open wrapper, but the former does not set errno. Update the caller to interpret the return codes like iconv_open does. --- iconv/iconv_prog.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/iconv/iconv_prog.c b/iconv/iconv_prog.c index bee898c63c..cf32cf9b44 100644 --- a/iconv/iconv_prog.c +++ b/iconv/iconv_prog.c @@ -187,7 +187,7 @@ main (int argc, char *argv[]) if (res != __GCONV_OK) { - if (errno == EINVAL) + if (res == __GCONV_NOCONV || res == __GCONV_NODB) { /* Try to be nice with the user and tell her which of the two encoding names is wrong. This is possible because -- 2.41.0 ++++++ ulp-prologue-into-asm-functions.patch ++++++ --- /var/tmp/diff_new_pack.SJovMI/_old 2023-08-12 15:05:39.010293526 +0200 +++ /var/tmp/diff_new_pack.SJovMI/_new 2023-08-12 15:05:39.014293552 +0200 @@ -1,4 +1,4 @@ -From 17a5177cbb228f22ef3e00d4bb66af71724a6d07 Mon Sep 17 00:00:00 2001 +From 65bb10c34ff3734373a8b4be4e707f0494449f17 Mon Sep 17 00:00:00 2001 From: Giuliano Belinassi <gbelina...@suse.de> Date: Wed, 24 May 2023 18:03:15 -0300 Subject: [PATCH] Add Userspace Livepatch prologue into ASM functions @@ -15,22 +15,22 @@ Makeconfig | 5 +++++ config.h.in | 3 +++ config.make.in | 1 + - configure | 20 ++++++++++++++++++++ + configure | 21 +++++++++++++++++++++ configure.ac | 13 +++++++++++++ sysdeps/x86/sysdep.h | 22 ++++++++++++++++++---- sysdeps/x86_64/multiarch/strcmp-avx2.S | 5 +---- sysdeps/x86_64/multiarch/strcmp-evex.S | 5 +---- sysdeps/x86_64/multiarch/strcmp-sse4_2.S | 5 +---- sysdeps/x86_64/sysdep.h | 13 +++++++++++++ - 10 files changed, 76 insertions(+), 16 deletions(-) + 10 files changed, 77 insertions(+), 16 deletions(-) diff --git a/Makeconfig b/Makeconfig -index 2fda4af5f7..52a79bc0c0 100644 +index 77d7fd14df..765d72bcf5 100644 --- a/Makeconfig +++ b/Makeconfig -@@ -961,6 +961,11 @@ endif # $(+cflags) == "" - $(+stack-protector) -fno-common - +gcc-nowarn := -w +@@ -984,6 +984,11 @@ else + +cflags += $(no-fortify-source) + endif +# Add flags for Userspace Livepatching support. +ifeq (yes,$(enable-userspace-livepatch)) @@ -41,10 +41,10 @@ # used to compile and will be installed. Each can also contain an # include/ subdirectory, whose header files will be used to compile diff --git a/config.h.in b/config.h.in -index 43d32518ab..32fc79a357 100644 +index 0dedc124f7..08b1868002 100644 --- a/config.h.in +++ b/config.h.in -@@ -199,6 +199,9 @@ +@@ -204,6 +204,9 @@ /* Define to 1 if libpthread actually resides in libc. */ #define PTHREAD_IN_LIBC 0 @@ -55,10 +55,10 @@ #define TIMEOUTFACTOR 1 diff --git a/config.make.in b/config.make.in -index d7c416cbea..c6f6909d68 100644 +index d487a4f4e9..e48351c59a 100644 --- a/config.make.in +++ b/config.make.in -@@ -86,6 +86,7 @@ nss-crypt = @libc_cv_nss_crypt@ +@@ -85,6 +85,7 @@ nss-crypt = @libc_cv_nss_crypt@ static-nss-crypt = @libc_cv_static_nss_crypt@ # Configuration options. @@ -67,10 +67,10 @@ build-profile = @profile@ build-static-nss = @static_nss@ diff --git a/configure b/configure -index efb891456a..4030ccf701 100755 +index c02c0b5825..e2000fdc4a 100755 --- a/configure +++ b/configure -@@ -591,6 +591,7 @@ LIBOBJS +@@ -622,6 +622,7 @@ LIBOBJS pthread_in_libc RELEASE VERSION @@ -78,31 +78,32 @@ mach_interface_list DEFINES static_nss -@@ -789,6 +790,7 @@ enable_mathvec - enable_cet +@@ -819,6 +820,7 @@ enable_cet enable_scv + enable_fortify_source with_cpu +enable_userspace_livepatch ' ac_precious_vars='build_alias host_alias -@@ -1462,6 +1464,8 @@ Optional Features: - (CET), x86 only - --disable-scv syscalls will not use scv instruction, even if the - kernel supports it, powerpc only +@@ -1501,6 +1503,8 @@ Optional Features: + Use -D_FORTIFY_SOURCE=[1|2|3] to control code + hardening, defaults to highest possible value + supported by the build compiler. + --enable-userspace-livepatch + build with userspace livepatch support [default=no] Optional Packages: --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] -@@ -6751,6 +6755,22 @@ libc_cv_multidir=`${CC-cc} $CFLAGS $CPPFLAGS -print-multi-directory` +@@ -8004,6 +8008,23 @@ libc_cv_multidir=`${CC-cc} $CFLAGS $CPPFLAGS -print-multi-directory` +# Check whether --enable-userspace-livepatch was given. -+if test "${enable_userspace_livepatch+set}" = set; then : ++if test ${enable_userspace_livepatch+y} ++then : + enableval=$enable_userspace_livepatch; enable_userspace_livepatch=$enableval -+else ++else $as_nop + enable_userspace_livepatch=no +fi + @@ -110,7 +111,7 @@ +# Libpulp uses -fpatchable-function-entry to add padding NOPS to the +# prologue of all functions. +if test "x$enable_userspace_livepatch" = xyes; then -+ $as_echo "#define ENABLE_USERSPACE_LIVEPATCH 1" >>confdefs.h ++ printf "%s\n" "#define ENABLE_USERSPACE_LIVEPATCH 1" >>confdefs.h + +fi + @@ -119,7 +120,7 @@ RELEASE=`sed -n -e 's/^#define RELEASE "\([^"]*\)"/\1/p' < $srcdir/version.h` diff --git a/configure.ac b/configure.ac -index 011844a3d4..26c1a78009 100644 +index 09553541fb..a07e3d6284 100644 --- a/configure.ac +++ b/configure.ac @@ -1827,6 +1827,19 @@ AC_SUBST(DEFINES) @@ -181,7 +182,7 @@ /* Common entry 16 byte aligns. */ #define ENTRY(name) ENTRY_P2ALIGN (name, 4) diff --git a/sysdeps/x86_64/multiarch/strcmp-avx2.S b/sysdeps/x86_64/multiarch/strcmp-avx2.S -index 07f8ec54c6..b22d59b5cf 100644 +index 8804338d75..d3584b2c5d 100644 --- a/sysdeps/x86_64/multiarch/strcmp-avx2.S +++ b/sysdeps/x86_64/multiarch/strcmp-avx2.S @@ -201,10 +201,7 @@ END (STRCASECMP) @@ -197,7 +198,7 @@ # if defined USE_AS_STRCASECMP_L /* We have to fall back on the C implementation for locales with diff --git a/sysdeps/x86_64/multiarch/strcmp-evex.S b/sysdeps/x86_64/multiarch/strcmp-evex.S -index a8bd5cd786..809ba10447 100644 +index ae39cdf217..44a8d4cee7 100644 --- a/sysdeps/x86_64/multiarch/strcmp-evex.S +++ b/sysdeps/x86_64/multiarch/strcmp-evex.S @@ -224,10 +224,7 @@ END (STRCASECMP) @@ -213,7 +214,7 @@ # if defined USE_AS_STRCASECMP_L /* We have to fall back on the C implementation for locales with diff --git a/sysdeps/x86_64/multiarch/strcmp-sse4_2.S b/sysdeps/x86_64/multiarch/strcmp-sse4_2.S -index f93c34465e..f96f66d54c 100644 +index cbb22884eb..327377daa6 100644 --- a/sysdeps/x86_64/multiarch/strcmp-sse4_2.S +++ b/sysdeps/x86_64/multiarch/strcmp-sse4_2.S @@ -103,10 +103,7 @@ END (STRCASECMP) @@ -253,6 +254,6 @@ /* This macro is for setting proper CFI with DW_CFA_expression describing -- -2.40.1 +2.41.0