Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package glibc for openSUSE:Factory checked 
in at 2021-09-17 23:25:22
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/glibc (Old)
 and      /work/SRC/openSUSE:Factory/.glibc.new.1899 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "glibc"

Fri Sep 17 23:25:22 2021 rev:253 rq:911561 version:2.34

Changes:
--------
--- /work/SRC/openSUSE:Factory/glibc/glibc.changes      2021-06-20 
19:37:45.421495405 +0200
+++ /work/SRC/openSUSE:Factory/.glibc.new.1899/glibc.changes    2021-09-17 
23:25:37.841219012 +0200
@@ -1,0 +2,99 @@
+Wed Aug 11 12:56:09 UTC 2021 - Andreas Schwab <[email protected]>
+
+- Don't create separate debuginfo packages for cross packages
+
+-------------------------------------------------------------------
+Wed Aug 11 12:23:10 UTC 2021 - Andreas Schwab <[email protected]>
+
+- ldconfig-leak-empty-paths.patch: ldconfig: avoid leak on empty paths in
+  config file
+- gconv-parseconfdir-memory-leak.patch: gconv_parseconfdir: Fix memory leak
+- gaiconf-init-double-free.patch: gaiconf_init: Avoid double-free in label
+  and precedence lists
+- copy-and-spawn-sgid-double-close.patch: copy_and_spawn_sgid: Avoid
+  double calls to close()
+- icon-charmap-close-output.patch: iconv_charmap: Close output file when
+  done
+- fcntl-time-bits-64-redirect.patch: Linux: Fix fcntl, ioctl, prctl
+  redirects for _TIME_BITS=64 (BZ #28182)
+- librt-null-pointer.patch: librt: fix NULL pointer dereference (BZ
+  #28213)
+
+-------------------------------------------------------------------
+Tue Aug 10 13:18:54 UTC 2021 - Michael Matz <[email protected]>
+
+- Add cross development packages for aarch64 and riscv64.
+
+-------------------------------------------------------------------
+Mon Aug  2 09:38:46 UTC 2021 - Andreas Schwab <[email protected]>
+
+- Update to glibc 2.34
+  Major new features:
+  * When _DYNAMIC_STACK_SIZE_SOURCE or _GNU_SOURCE are defined,
+    PTHREAD_STACK_MIN is no longer constant and is redefined to
+    sysconf(_SC_THREAD_STACK_MIN)
+  * Add _SC_MINSIGSTKSZ and _SC_SIGSTKSZ
+  * The dynamic linker implements the --list-diagnostics option, printing
+    a dump of information related to IFUNC resolver operation and
+    glibc-hwcaps subdirectory selection
+  * On Linux, the function execveat has been added
+  * The ISO C2X function timespec_getres has been added
+  * The feature test macro __STDC_WANT_IEC_60559_EXT__, from draft ISO
+    C2X, is supported to enable declarations of functions defined in Annex F
+    of C2X
+  * Add support for 64-bit time_t on configurations like x86 where time_t
+    is traditionally 32-bit
+  * The main gconv-modules file in glibc now contains only a small set of
+    essential converter modules and the rest have been moved into a 
supplementary
+    configuration file gconv-modules-extra.conf in the gconv-modules.d 
directory
+    in the same GCONV_PATH
+  * On Linux, a new tunable, glibc.pthread.stack_cache_size, can be used
+    to configure the size of the thread stack cache
+  * The function _Fork has been added as an async-signal-safe fork replacement
+    since Austin Group issue 62 droped the async-signal-safe requirement for
+    fork (and it will be included in the future POSIX standard)
+  * On Linux, the close_range function has been added
+  * The function closefrom has been added
+  * The posix_spawn_file_actions_closefrom_np function has been added, enabling
+    posix_spawn and posix_spawnp to close all file descriptors great than or
+    equal to a giver integer
+  Deprecated and removed features, and other changes affecting compatibility:
+  * The function pthread_mutex_consistent_np has been deprecated
+  * The function pthread_mutexattr_getrobust_np has been deprecated
+  * The function pthread_mutexattr_setrobust_np has been deprecated
+  * The function pthread_yield has been deprecated
+  * The function inet_neta declared in <arpa/inet.h> has been deprecated
+  * Various rarely-used functions declared in <resolv.h> and
+    <arpa/nameser.h> have been deprecated
+  * The pthread cancellation handler is now installed with SA_RESTART and
+    pthread_cancel will always send the internal SIGCANCEL on a cancellation
+    request
+  * The symbols mallwatch and tr_break are now deprecated and no longer used in
+    mtrace
+  * The __morecore and __after_morecore_hook malloc hooks and the default
+    implementation __default_morecore have been removed from the API
+  * Debugging features in malloc such as the MALLOC_CHECK_ environment variable
+    (or the glibc.malloc.check tunable), mtrace() and mcheck() have now been
+    disabled by default in the main C library
+  * The deprecated functions malloc_get_state and malloc_set_state have been
+    moved from the core C library into libc_malloc_debug.so
+  * The deprecated memory allocation hooks __malloc_hook, __realloc_hook,
+    __memalign_hook and __free_hook are now removed from the API
+  Changes to build and runtime requirements:
+  * On Linux, the shm_open, sem_open, and related functions now expect the
+    file shared memory file system to be mounted at /dev/shm
+  Security related changes:
+    CVE-2021-27645: The nameserver caching daemon (nscd), when processing
+    a request for netgroup lookup, may crash due to a double-free,
+    potentially resulting in degraded service or Denial of Service on the
+    local system
+    CVE-2021-33574: The mq_notify function has a potential use-after-free
+    issue when using a notification type of SIGEV_THREAD and a thread
+    attribute with a non-default affinity mask
+- nss-database-check-reload.patch, nss-load-chroot.patch,
+  x86-isa-level.patch, nscd-netgroupcache.patch,
+  nss-database-lookup.patch, select-modify-timeout.patch,
+  nptl-db-libpthread-load-order.patch, rawmemchr-warning.patch,
+  tst-cpu-features-amx.patch, mq-notify-use-after-free.patch: Removed
+
+-------------------------------------------------------------------

Old:
----
  glibc-2.33.tar.xz
  glibc-2.33.tar.xz.sig
  mq-notify-use-after-free.patch
  nptl-db-libpthread-load-order.patch
  nscd-netgroupcache.patch
  nss-database-check-reload.patch
  nss-database-lookup.patch
  nss-load-chroot.patch
  rawmemchr-warning.patch
  select-modify-timeout.patch
  tst-cpu-features-amx.patch
  x86-isa-level.patch

New:
----
  copy-and-spawn-sgid-double-close.patch
  fcntl-time-bits-64-redirect.patch
  gaiconf-init-double-free.patch
  gconv-parseconfdir-memory-leak.patch
  glibc-2.34.tar.xz
  glibc-2.34.tar.xz.sig
  icon-charmap-close-output.patch
  ldconfig-leak-empty-paths.patch
  librt-null-pointer.patch

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ glibc.spec ++++++
--- /var/tmp/diff_new_pack.4n9LvL/_old  2021-09-17 23:25:39.177220204 +0200
+++ /var/tmp/diff_new_pack.4n9LvL/_new  2021-09-17 23:25:39.181220207 +0200
@@ -1,5 +1,5 @@
 #
-# spec file for package glibc%{name_suffix}
+# spec file
 #
 # Copyright (c) 2021 SUSE LLC
 #
@@ -25,6 +25,24 @@
 
 %define flavor @BUILD_FLAVOR@%{nil}
 
+# We need to map from flavor to cross-arch, but as we need the
+# result in BuildRequires where the build service evaluates, we
+# can use only simple RPM expressions, no lua, no shell, no '{expand:'
+# expression :-/  Ideally we'd like to just strip the 'cross_' prefix,
+# but we can't.  So enumerate the possibilities for now.
+%if "%flavor" == "cross-aarch64"
+%define cross_arch aarch64
+%endif
+%if "%flavor" == "cross-riscv64"
+%define cross_arch riscv64
+%endif
+
+%if 0%{?cross_arch:1}
+%define binutils_os %{cross_arch}-suse-linux
+# use same sysroot as in binutils.spec
+%define sysroot %{_prefix}/%{binutils_os}/sys-root
+%endif
+
 %if 0%{?usrmerged} || 0%{?suse_version} >= 1550
 %bcond_without usrmerged
 %else
@@ -35,6 +53,7 @@
 %define build_main 1
 %define build_utils %{with build_all}
 %define build_testsuite %{with build_all}
+%define build_cross 0
 %if "%flavor" == "utils"
 %if %{with ringdisabled}
 ExclusiveArch:  do_not_build
@@ -51,6 +70,18 @@
 %define build_utils 0
 %define build_testsuite 1
 %endif
+%if 0%{?cross_arch:1}
+%define build_main 0
+%define build_utils 0
+%define build_testsuite 0
+%define build_cross 1
+%undefine _build_create_debug
+ExcludeArch:    %{cross_arch}
+%if %{with ringdisabled}
+ExclusiveArch:  do_not_build
+%endif
+%endif
+%define host_arch %{?cross_arch}%{!?cross_arch:%{_target_cpu}}
 
 %if %{build_main}
 %define name_suffix %{nil}
@@ -86,6 +117,10 @@
 BuildRequires:  libpng-devel
 BuildRequires:  zlib-devel
 %endif
+%if %{build_cross}
+BuildRequires:  cross-%{cross_arch}-gcc11-bootstrap
+BuildRequires:  cross-%{cross_arch}-linux-glibc-devel
+%endif
 %if "%flavor" == "i686"
 ExclusiveArch:  i586 i686
 BuildArch:      i686
@@ -99,7 +134,7 @@
 %define build_locales 1
 %define build_html 0
 %else
-%if %{with fast_build} || %{build_utils} && %{without build_all}
+%if %{with fast_build} || %{build_cross} || %{build_utils} && %{without 
build_all}
 %define build_profile 0
 %define build_locales 0
 %define build_html 0
@@ -131,10 +166,10 @@
 %define enablekernel 4.15
 %endif
 
-Version:        2.33
+Version:        2.34
 Release:        0
 %if !%{build_snapshot}
-%define git_id 9826b03b74
+%define git_id ae37d06c7d
 %define libversion %version
 %else
 %define git_id %(echo %version | sed 's/.*\.g//')
@@ -246,26 +281,20 @@
 ###
 # Patches from upstream
 ###
-# PATCH-FIX-UPSTREAM nsswitch: return result when nss database is locked (BZ 
#27343)
-Patch1000:      nss-database-check-reload.patch
-# PATCH-FIX-UPSTREAM nss: Re-enable NSS module loading after chroot (BZ #27389)
-Patch1001:      nss-load-chroot.patch
-# PATCH-FIX-UPSTREAM x86: Set minimum x86-64 level marker (BZ #27318)
-Patch1002:      x86-isa-level.patch
-# PATCH-FIX-UPSTREAM nscd: Fix double free in netgroupcache (CVE-2021-27645, 
BZ #27462)
-Patch1003:      nscd-netgroupcache.patch
-# PATCH-FIX-UPSTREAM nss: fix nss_database_lookup2's alternate handling (BZ 
#27416)
-Patch1004:      nss-database-lookup.patch
-# PATCH-FIX-UPSTREAM linux: always update select timeout (BZ #27706)
-Patch1005:      select-modify-timeout.patch
-# PATCH-FIX-UPSTREAM: nptl_db: Support different libpthread/ld.so load orders 
(BZ #27744)
-Patch1006:      nptl-db-libpthread-load-order.patch
-# PATCH-FIX-UPSTREAM: string: Work around GCC PR 98512 in rawmemchr
-Patch1007:      rawmemchr-warning.patch
-# PATCH-FIX-UPSTREAM: x86: tst-cpu-features-supports.c: Update AMX check
-Patch1008:      tst-cpu-features-amx.patch
-# PATCH-FIX-UPSTREAM: Use __pthread_attr_copy in mq_notify (CVE-2021-33574, BZ 
#27896)
-Patch1009:      mq-notify-use-after-free.patch
+# PATCH-FIX-UPSTREAM ldconfig: avoid leak on empty paths in config file
+Patch1000:      ldconfig-leak-empty-paths.patch
+# PATCH-FIX-UPSTREAM gconv_parseconfdir: Fix memory leak
+Patch1001:      gconv-parseconfdir-memory-leak.patch
+# PATCH-FIX-UPSTREAM gaiconf_init: Avoid double-free in label and precedence 
lists
+Patch1002:      gaiconf-init-double-free.patch
+# PATCH-FIX-UPSTREAM copy_and_spawn_sgid: Avoid double calls to close()
+Patch1003:      copy-and-spawn-sgid-double-close.patch
+# PATCH-FIX-UPSTREAM iconv_charmap: Close output file when done
+Patch1004:      icon-charmap-close-output.patch
+# PATCH-FIX-UPSTREAM Linux: Fix fcntl, ioctl, prctl redirects for 
_TIME_BITS=64 (BZ #28182)
+Patch1005:      fcntl-time-bits-64-redirect.patch
+# PATCH-FIX-UPSTREAM librt: fix NULL pointer dereference (BZ #28213)
+Patch1006:      librt-null-pointer.patch
 
 ###
 # Patches awaiting upstream approval
@@ -453,6 +482,18 @@
 %lang_package
 %endif
 
+%package -n cross-%{cross_arch}-glibc-devel
+Summary:        Include Files and Libraries Mandatory for Development
+License:        BSD-3-Clause AND LGPL-2.1-or-later AND LGPL-2.1-or-later WITH 
GCC-exception-2.0 AND GPL-2.0-or-later
+Group:          Development/Libraries/C and C++
+Requires:       cross-%{cross_arch}-linux-glibc-devel
+BuildArch:      noarch
+AutoReqProv:    off
+
+%description -n cross-%{cross_arch}-glibc-devel
+These libraries are needed to develop programs which use the standard C
+library in a cross compilation setting.
+
 %prep
 %setup -n glibc-%{version} -q -a 4
 %patch6 -p1
@@ -474,6 +515,9 @@
 %patch304 -p1
 %patch306 -p1
 
+%patch2000 -p1
+%patch2001 -p1
+
 %patch1000 -p1
 %patch1001 -p1
 %patch1002 -p1
@@ -481,12 +525,6 @@
 %patch1004 -p1
 %patch1005 -p1
 %patch1006 -p1
-%patch1007 -p1
-%patch1008 -p1
-%patch1009 -p1
-
-%patch2000 -p1
-%patch2001 -p1
 
 %patch3000
 
@@ -503,19 +541,22 @@
 ulimit -a
 nice
 # We do not want configure to figure out the system its building one
-# to support a common ground and thus set build and host to the
-# target_cpu.
+# to support a common ground and thus set build and host ourself.
+target="%{host_arch}-suse-linux"
+case " %arm " in
+  *" %{host_arch} "*) target="%{host_arch}-suse-linux-gnueabi" ;;
+esac
 %ifarch %arm
-%define target %{_target_cpu}-suse-linux-gnueabi
+%define build %{_target_cpu}-suse-linux-gnueabi
 %else
-%define target %{_target_cpu}-suse-linux
+%define build %{_target_cpu}-suse-linux
 %endif
 # Don't use as-needed, it breaks glibc assumptions
 # Before enabling it, run the testsuite and verify that it
 # passes completely
 export SUSE_ASNEEDED=0
 # Adjust glibc version.h
-echo "#define CONFHOST \"%{target}\"" >> version.h
+echo "#define CONFHOST \"${target}\"" >> version.h
 echo "#define GITID \"%{git_id}\"" >> version.h
 #
 # Default CFLAGS and Compiler
@@ -531,6 +572,9 @@
 %if "%flavor" == "i686"
     *i586*) BuildFlags+=" ${opt/i586/i686}" ;;
 %endif
+%if %{build_cross}
+    -m*) ;;  # remove all machine specific options for crosses
+%endif
     *) BuildFlags+=" $opt" ;;
   esac
 done
@@ -542,6 +586,10 @@
 #
 #now overwrite for some architectures
 #
+%if %{build_cross}
+BuildCC=%{cross_arch}-suse-linux-gcc
+BuildCCplus=%{cross_arch}-suse-linux-g++
+%else
 %ifarch sparc64
        BuildFlags="-O2 -mcpu=ultrasparc -mvis -fcall-used-g6"
        BuildCC="gcc -m64"
@@ -578,6 +626,7 @@
        # fails to build otherwise - need to recheck and fix
        %define enable_stackguard_randomization 0
 %endif
+%endif
 
 #
 # Build base glibc
@@ -589,13 +638,22 @@
 %else
 profile="--disable-profile"
 %endif
+
+CONFARGS=
+case " %{ix86} x86_64 aarch64 " in
+  *" %{host_arch} "*) CONFARGS="$CONFARGS --enable-static-pie" ;;
+esac
+
 ../configure \
        CFLAGS="$BuildFlags" BUILD_CFLAGS="$BuildFlags" \
        CC="$BuildCC" CXX="$BuildCCplus" \
        --prefix=%{_prefix} \
        --libexecdir=%{_libexecdir} --infodir=%{_infodir} \
         $profile \
-       --build=%{target} --host=%{target} \
+       --build=%{build} --host=${target} \
+%if %{build_cross}
+       --with-headers=%{sysroot}/usr/include \
+%else
 %ifarch armv7hl ppc ppc64 ppc64le i686 x86_64 sparc sparc64 s390 s390x
        --enable-multi-arch \
 %endif
@@ -616,20 +674,27 @@
        --enable-cet \
 %endif
 %endif
+       --enable-systemtap \
+%endif
+       $CONFARGS \
 %if %{enable_stackguard_randomization}
        --enable-stackguard-randomization \
 %endif
        
${enable_stack_protector:+--enable-stack-protector=$enable_stack_protector} \
-%ifarch %{ix86} x86_64 aarch64
-       --enable-static-pie \
-%endif
        --enable-tunables \
        --enable-kernel=%{enablekernel} \
        --with-bugurl=http://bugs.opensuse.org \
        --enable-bind-now \
-       --enable-systemtap \
        --disable-timezone-tools \
-       --disable-crypt
+       --disable-crypt || \
+  {
+    rc=$?;
+    echo "------- BEGIN config.log ------";
+    %{__cat} config.log;
+    echo "------- END config.log ------";
+    exit $rc;
+  }
+
 make %{?_smp_mflags}
 cd ..
 
@@ -742,6 +807,7 @@
 ln -s %{buildroot}%{_sbindir} %{buildroot}/sbin
 %endif
 
+%if !%{build_cross}
 %ifarch riscv64
 mkdir -p %{buildroot}%{_libdir}
 ln -s . %{buildroot}%{_libdir}/lp64d
@@ -750,10 +816,11 @@
 ln -s . %{buildroot}%{slibdir}/lp64d
 %endif
 %endif
+%endif
 
 %if %{build_main}
 # We don't want to strip the .symtab from our libraries in find-debuginfo.sh,
-# certainly not from libpthread.so.* because it is used by libthread_db to find
+# certainly not from libc.so.* because it is used by libthread_db to find
 # some non-exported symbols in order to detect if threading support
 # should be enabled.  These symbols are _not_ exported, and we can't easily
 # export them retroactively without changing the ABI.  So we have to
@@ -857,7 +924,7 @@
 
 %if 0%{?rtld_oldname:1}
 # Provide compatibility link
-ln -s %{slibdir}/ld-%{libversion}.so %{buildroot}%{rtlddir}/%{rtld_oldname}
+ln -s %{rtlddir}/%{rtld_name} %{buildroot}%{rtlddir}/%{rtld_oldname}
 %endif
 
 # Move getconf to %{_libexecdir}/getconf/ to avoid cross device link
@@ -894,22 +961,22 @@
 
 # LSB
 %ifarch %ix86
-ln -sf %{slibdir}/%{rtld_name} $RPM_BUILD_ROOT%{slibdir}/ld-lsb.so.3
+ln -sf %{rtlddir}/%{rtld_name} $RPM_BUILD_ROOT%{slibdir}/ld-lsb.so.3
 %endif
 %ifarch x86_64
-ln -sf %{slibdir}/%{rtld_name} $RPM_BUILD_ROOT%{slibdir}/ld-lsb-x86-64.so.3
+ln -sf %{rtlddir}/%{rtld_name} $RPM_BUILD_ROOT%{slibdir}/ld-lsb-x86-64.so.3
 %endif
 %ifarch ppc
-ln -sf %{slibdir}/%{rtld_name} $RPM_BUILD_ROOT%{slibdir}/ld-lsb-ppc32.so.3
+ln -sf %{rtlddir}/%{rtld_name} $RPM_BUILD_ROOT%{slibdir}/ld-lsb-ppc32.so.3
 %endif
 %ifarch ppc64
-ln -sf %{slibdir}/%{rtld_name} $RPM_BUILD_ROOT%{slibdir}/ld-lsb-ppc64.so.3
+ln -sf %{rtlddir}/%{rtld_name} $RPM_BUILD_ROOT%{slibdir}/ld-lsb-ppc64.so.3
 %endif
 %ifarch s390
-ln -sf %{slibdir}/%{rtld_name} $RPM_BUILD_ROOT%{slibdir}/ld-lsb-s390.so.3
+ln -sf %{rtlddir}/%{rtld_name} $RPM_BUILD_ROOT%{slibdir}/ld-lsb-s390.so.3
 %endif
 %ifarch s390x
-ln -sf %{slibdir}/%{rtld_name} $RPM_BUILD_ROOT%{slibdir}/ld-lsb-s390x.so.3
+ln -sf %{rtlddir}/%{rtld_name} $RPM_BUILD_ROOT%{slibdir}/ld-lsb-s390x.so.3
 %endif
 
 %else
@@ -920,10 +987,7 @@
   subdirs='malloc debug elf'
 cd manpages; make install_root=%{buildroot} install; cd ..
 # Remove unwanted files
-rm -f %{buildroot}%{slibdir}/ld*.so* %{buildroot}%{slibdir}/lib[!mp]*
-%if "%{rtlddir}" != "%{slibdir}"
-rm -f %{buildroot}%{rtlddir}/ld*.so*
-%endif
+rm -f %{buildroot}%{rtlddir}/ld*.so* %{buildroot}%{slibdir}/lib[!mp]*
 %if "%{_libdir}" != "%{slibdir}"
 rm -f %{buildroot}%{_libdir}/lib*
 %else
@@ -941,6 +1005,28 @@
 
 %endif
 
+%if %{build_cross}
+# See above
+export STRIP_KEEP_SYMTAB=*.so*
+export NO_BRP_STRIP_DEBUG=true
+make %{?_smp_mflags} install_root=%{buildroot}/%{sysroot} install -C cc-base
+rm -rf %{buildroot}/%{sysroot}/%{_libdir}/audit
+rm -rf %{buildroot}/%{sysroot}/%{_libdir}/gconv
+rm -rf %{buildroot}/%{sysroot}/%{_infodir}
+rm -rf %{buildroot}/%{sysroot}/%{_prefix}/share/i18n
+rm -rf %{buildroot}/%{sysroot}/%{_datadir}/locale/*/
+rm -f %{buildroot}/%{sysroot}/%{_bindir}/makedb
+rm -rf %{buildroot}/%{sysroot}/var/lib
+rm -f %{buildroot}/%{sysroot}/%{_sbindir}/nscd
+
+# Some programs look for <prefix>/lib/../$subdir where subdir is
+# for instance "lib64".  For this path lookup to succeed we need the
+# ../lib subdir, even if it's empty, so enforce its existence.
+mkdir -p %{buildroot}/%{sysroot}/lib
+mkdir -p %{buildroot}/%{sysroot}/%{_prefix}/lib
+
+%endif
+
 %endif
 
 %if %{with usrmerged}
@@ -1063,11 +1149,7 @@
 %doc %{_mandir}/man1/getconf.1.gz
 %doc %{_mandir}/man5/*
 
-%{slibdir}/ld-%{libversion}.so
-%{slibdir}/%{rtld_name}
-%if "%{rtlddir}" != "%{slibdir}"
 %{rtlddir}/%{rtld_name}
-%endif
 %if 0%{?rtld_oldname:1}
 %{rtlddir}/%{rtld_oldname}
 %endif
@@ -1083,42 +1165,26 @@
 %endif
 %endif
 
-%{slibdir}/libBrokenLocale-%{libversion}.so
 %{slibdir}/libBrokenLocale.so.1
 %{slibdir}/libSegFault.so
-%{slibdir}/libanl-%{libversion}.so
 %{slibdir}/libanl.so.1
-%{slibdir}/libc-%{libversion}.so
 %{slibdir}/libc.so.6*
-%{slibdir}/libdl-%{libversion}.so
+%{slibdir}/libc_malloc_debug.so.0
 %{slibdir}/libdl.so.2*
-%{slibdir}/libm-%{libversion}.so
 %{slibdir}/libm.so.6*
 %ifarch x86_64
-%{slibdir}/libmvec-%{libversion}.so
 %{slibdir}/libmvec.so.1
 %endif
-%{slibdir}/libnsl-%{libversion}.so
 %{slibdir}/libnsl.so.1
-%{slibdir}/libnss_compat-%{libversion}.so
 %{slibdir}/libnss_compat.so.2
-%{slibdir}/libnss_db-%{libversion}.so
 %{slibdir}/libnss_db.so.2
-%{slibdir}/libnss_dns-%{libversion}.so
 %{slibdir}/libnss_dns.so.2
-%{slibdir}/libnss_files-%{libversion}.so
 %{slibdir}/libnss_files.so.2
-%{slibdir}/libnss_hesiod-%{libversion}.so
 %{slibdir}/libnss_hesiod.so.2
-%{slibdir}/libpthread-%{libversion}.so
 %{slibdir}/libpthread.so.0
-%{slibdir}/libresolv-%{libversion}.so
 %{slibdir}/libresolv.so.2
-%{slibdir}/librt-%{libversion}.so
 %{slibdir}/librt.so.1
-%{slibdir}/libthread_db-1.0.so
 %{slibdir}/libthread_db.so.1
-%{slibdir}/libutil-%{libversion}.so
 %{slibdir}/libutil.so.1
 %dir %attr(0700,root,root) /var/cache/ldconfig
 %{rootsbindir}/ldconfig
@@ -1147,6 +1213,7 @@
 %dir %{_libdir}/gconv
 %{_libdir}/gconv/*.so
 %{_libdir}/gconv/gconv-modules
+%{_libdir}/gconv/gconv-modules.d
 %attr(0644,root,root) %verify(not md5 size mtime) %ghost 
%{_libdir}/gconv/gconv-modules.cache
 
 %files locale
@@ -1170,45 +1237,40 @@
 %{_libdir}/libBrokenLocale.so
 %{_libdir}/libanl.so
 %{_libdir}/libc.so
-%{_libdir}/libdl.so
+%{_libdir}/libc_malloc_debug.so
 %{_libdir}/libm.so
 %ifarch x86_64
 %{_libdir}/libmvec.so
 %endif
 %{_libdir}/libnss_compat.so
 %{_libdir}/libnss_db.so
-%{_libdir}/libnss_dns.so
-%{_libdir}/libnss_files.so
 %{_libdir}/libnss_hesiod.so
-%{_libdir}/libpthread.so
 %{_libdir}/libresolv.so
-%{_libdir}/librt.so
 %{_libdir}/libthread_db.so
-%{_libdir}/libutil.so
 # These static libraries are needed even for shared builds
 %{_libdir}/libc_nonshared.a
+%{_libdir}/libdl.a
 %{_libdir}/libg.a
 %ifarch ppc ppc64 ppc64le s390 s390x sparc sparcv8 sparcv9 sparcv9v
 # This is not built on sparc64.
        %{_libdir}/libnldbl_nonshared.a
 %endif
 %{_libdir}/libmcheck.a
+%{_libdir}/libpthread.a
+%{_libdir}/librt.a
+%{_libdir}/libutil.a
 
 %files devel-static
 %defattr(-,root,root)
 %{_libdir}/libBrokenLocale.a
 %{_libdir}/libanl.a
 %{_libdir}/libc.a
-%{_libdir}/libdl.a
 %{_libdir}/libm.a
 %ifarch x86_64
 %{_libdir}/libm-%{libversion}.a
 %{_libdir}/libmvec.a
 %endif
-%{_libdir}/libpthread.a
 %{_libdir}/libresolv.a
-%{_libdir}/librt.a
-%{_libdir}/libutil.a
 
 %ifnarch i686
 %files info
@@ -1275,6 +1337,13 @@
 
 %endif
 
+%if %{build_cross}
+%files -n cross-%{cross_arch}-glibc-devel
+%defattr(-,root,root)
+%license COPYING COPYING.LIB
+%{sysroot}
+%endif
+
 %if %{build_utils}
 %files -n glibc-utils
 %defattr(-,root,root)

++++++ _multibuild ++++++
--- /var/tmp/diff_new_pack.4n9LvL/_old  2021-09-17 23:25:39.237220257 +0200
+++ /var/tmp/diff_new_pack.4n9LvL/_new  2021-09-17 23:25:39.237220257 +0200
@@ -2,4 +2,6 @@
   <package>i686</package>
   <package>utils</package>
   <package>testsuite</package>
+  <package>cross-aarch64</package>
+  <package>cross-riscv64</package>
 </multibuild>

++++++ copy-and-spawn-sgid-double-close.patch ++++++
>From 45caed9d67a00af917d8b5b88d4b5eb1225b7aef Mon Sep 17 00:00:00 2001
From: Siddhesh Poyarekar <[email protected]>
Date: Tue, 3 Aug 2021 21:10:53 +0530
Subject: [PATCH] copy_and_spawn_sgid: Avoid double calls to close()

If close() on infd and outfd succeeded, reset the fd numbers so that
we don't attempt to close them again.

Reviewed-by: Arjun Shankar <[email protected]>
---
 support/support_capture_subprocess.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/support/support_capture_subprocess.c 
b/support/support_capture_subprocess.c
index 27bfd19c93..0bacf6dbc2 100644
--- a/support/support_capture_subprocess.c
+++ b/support/support_capture_subprocess.c
@@ -170,6 +170,7 @@ copy_and_spawn_sgid (char *child_id, gid_t gid)
      support_subprogram because we only want the program exit status, not the
      contents.  */
   ret = 0;
+  infd = outfd = -1;
 
   char * const args[] = {execname, child_id, NULL};
 
-- 
2.32.0

++++++ fcntl-time-bits-64-redirect.patch ++++++
>From c87fcacc50505d550f1bb038382bcc7ea73a5926 Mon Sep 17 00:00:00 2001
From: Florian Weimer <[email protected]>
Date: Fri, 6 Aug 2021 09:51:38 +0200
Subject: [PATCH] Linux: Fix fcntl, ioctl, prctl redirects for _TIME_BITS=64
 (bug 28182)

__REDIRECT and __THROW are not compatible with C++ due to the ordering of the
__asm__ alias and the throw specifier. __REDIRECT_NTH has to be used
instead.

Fixes commit 8a40aff86ba5f64a3a84883e539cb67b ("io: Add time64 alias
for fcntl"), commit 82c395d91ea4f69120d453aeec398e30 ("misc: Add
time64 alias for ioctl"), commit b39ffab860cd743a82c91946619f1b8158
("Linux: Add time64 alias for prctl").

Reviewed-by: Carlos O'Donell <[email protected]>
---
 io/fcntl.h                          | 8 ++++----
 misc/sys/ioctl.h                    | 4 ++--
 sysdeps/unix/sysv/linux/sys/prctl.h | 2 +-
 3 files changed, 7 insertions(+), 7 deletions(-)

diff --git a/io/fcntl.h b/io/fcntl.h
index 8917a73b42..1c96f98f4d 100644
--- a/io/fcntl.h
+++ b/io/fcntl.h
@@ -187,10 +187,10 @@ extern int fcntl64 (int __fd, int __cmd, ...);
 # endif
 #else /* __USE_TIME_BITS64 */
 # ifdef __REDIRECT
-extern int __REDIRECT (fcntl, (int __fd, int __request, ...),
-                      __fcntl_time64)  __THROW;
-extern int __REDIRECT (fcntl64, (int __fd, int __request, ...),
-                      __fcntl_time64)  __THROW;
+extern int __REDIRECT_NTH (fcntl, (int __fd, int __request, ...),
+                          __fcntl_time64);
+extern int __REDIRECT_NTH (fcntl64, (int __fd, int __request, ...),
+                          __fcntl_time64);
 # else
 extern int __fcntl_time64 (int __fd, int __request, ...) __THROW;
 #  define fcntl64 __fcntl_time64
diff --git a/misc/sys/ioctl.h b/misc/sys/ioctl.h
index 6884d9925f..9945c1e918 100644
--- a/misc/sys/ioctl.h
+++ b/misc/sys/ioctl.h
@@ -42,8 +42,8 @@ __BEGIN_DECLS
 extern int ioctl (int __fd, unsigned long int __request, ...) __THROW;
 #else
 # ifdef __REDIRECT
-extern int __REDIRECT (ioctl, (int __fd, unsigned long int __request, ...),
-                      __ioctl_time64) __THROW;
+extern int __REDIRECT_NTH (ioctl, (int __fd, unsigned long int __request, ...),
+                          __ioctl_time64);
 # else
 extern int __ioctl_time64 (int __fd, unsigned long int __request, ...) __THROW;
 #  define ioctl __ioctl_time64
diff --git a/sysdeps/unix/sysv/linux/sys/prctl.h 
b/sysdeps/unix/sysv/linux/sys/prctl.h
index db88938b3a..f0e0d2f27f 100644
--- a/sysdeps/unix/sysv/linux/sys/prctl.h
+++ b/sysdeps/unix/sysv/linux/sys/prctl.h
@@ -42,7 +42,7 @@ __BEGIN_DECLS
 extern int prctl (int __option, ...) __THROW;
 #else
 # ifdef __REDIRECT
-extern int __REDIRECT (prctl, (int __option, ...), __prctl_time64) __THROW;
+extern int __REDIRECT_NTH (prctl, (int __option, ...), __prctl_time64);
 # else
 extern int __prctl_time64 (int __option,d ...) __THROW;
 #  define ioctl __prctl_time64
-- 
2.32.0

++++++ gaiconf-init-double-free.patch ++++++
>From 77a34079d8f3d63b61543bf3af93043f8674e4c4 Mon Sep 17 00:00:00 2001
From: Siddhesh Poyarekar <[email protected]>
Date: Tue, 3 Aug 2021 21:11:03 +0530
Subject: [PATCH] gaiconf_init: Avoid double-free in label and precedence lists

labellist and precedencelist could get freed a second time if there
are allocation failures, so set them to NULL to avoid a double-free.

Reviewed-by: Arjun Shankar <[email protected]>
---
 sysdeps/posix/getaddrinfo.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/sysdeps/posix/getaddrinfo.c b/sysdeps/posix/getaddrinfo.c
index 838a68f022..43dfc6739e 100644
--- a/sysdeps/posix/getaddrinfo.c
+++ b/sysdeps/posix/getaddrinfo.c
@@ -2008,6 +2008,7 @@ gaiconf_init (void)
              l = l->next;
            }
          free_prefixlist (labellist);
+         labellist = NULL;
 
          /* Sort the entries so that the most specific ones are at
             the beginning.  */
@@ -2046,6 +2047,7 @@ gaiconf_init (void)
              l = l->next;
            }
          free_prefixlist (precedencelist);
+         precedencelist = NULL;
 
          /* Sort the entries so that the most specific ones are at
             the beginning.  */
-- 
2.32.0

++++++ gconv-parseconfdir-memory-leak.patch ++++++
>From 5f9b78fe35d08739b6da1e5b356786d41116c108 Mon Sep 17 00:00:00 2001
From: Siddhesh Poyarekar <[email protected]>
Date: Tue, 3 Aug 2021 21:10:20 +0530
Subject: [PATCH] gconv_parseconfdir: Fix memory leak

The allocated `conf` would leak if we have to skip over the file due
to the underlying filesystem not supporting dt_type.

Reviewed-by: Arjun Shankar <[email protected]>
---
 iconv/gconv_parseconfdir.h | 9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)

diff --git a/iconv/gconv_parseconfdir.h b/iconv/gconv_parseconfdir.h
index a4153e54c6..2f062689ec 100644
--- a/iconv/gconv_parseconfdir.h
+++ b/iconv/gconv_parseconfdir.h
@@ -153,12 +153,11 @@ gconv_parseconfdir (const char *dir, size_t dir_len)
              struct stat64 st;
              if (asprintf (&conf, "%s/%s", buf, ent->d_name) < 0)
                continue;
-             if (ent->d_type == DT_UNKNOWN
-                 && (lstat64 (conf, &st) == -1
-                     || !S_ISREG (st.st_mode)))
-               continue;
 
-             found |= read_conf_file (conf, dir, dir_len);
+             if (ent->d_type != DT_UNKNOWN
+                 || (lstat64 (conf, &st) != -1 && S_ISREG (st.st_mode)))
+               found |= read_conf_file (conf, dir, dir_len);
+
              free (conf);
            }
        }
-- 
2.32.0

++++++ glibc-2.33.tar.xz -> glibc-2.34.tar.xz ++++++
/work/SRC/openSUSE:Factory/glibc/glibc-2.33.tar.xz 
/work/SRC/openSUSE:Factory/.glibc.new.1899/glibc-2.34.tar.xz differ: char 27, 
line 2

++++++ glibc.keyring ++++++
--- /var/tmp/diff_new_pack.4n9LvL/_old  2021-09-17 23:25:39.397220399 +0200
+++ /var/tmp/diff_new_pack.4n9LvL/_new  2021-09-17 23:25:39.397220399 +0200
@@ -1,3 +1,8 @@
+Member GPG keyring of libc group.
+
+Note that this keyring is not intended for checking releases of that group.
+Use Group Release Keyring instead.
+
 GPG keys of Andreas Schwab <schwab>
 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: GnuPG v2

++++++ glibc.rpmlintrc ++++++
--- /var/tmp/diff_new_pack.4n9LvL/_old  2021-09-17 23:25:39.425220424 +0200
+++ /var/tmp/diff_new_pack.4n9LvL/_new  2021-09-17 23:25:39.425220424 +0200
@@ -18,3 +18,9 @@
 # with glibc, therefore do not warn about them
 addFilter("glibc.*no-manual-page-for-binary 
(getent|iconv|ldd|ldconfig|locale)")
 addFilter("nscd.*no-manual-page-for-binary nscd")
+# the cross..-devel packages contain everything, in non-std paths, so no
+# ldconfig is wanted or needed (for sle-15 based trees), and we accept
+# the *.so symlinks, and deliver (target) binaries
+addFilter("cross.*library-without-ldconfig-post.*")
+addFilter("cross.*non-devel-file-in-devel-package.*")
+addFilter("cross.*arch-independent-package-contains-binary-or-object.*")

++++++ icon-charmap-close-output.patch ++++++
>From 1e0e6d656db9dfa12ef7eb67976385d3deb0d4ff Mon Sep 17 00:00:00 2001
From: Siddhesh Poyarekar <[email protected]>
Date: Tue, 3 Aug 2021 21:10:29 +0530
Subject: [PATCH] iconv_charmap: Close output file when done

Reviewed-by: Arjun Shankar <[email protected]>
---
 iconv/iconv_charmap.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/iconv/iconv_charmap.c b/iconv/iconv_charmap.c
index e2d53fee3c..a8b6b56124 100644
--- a/iconv/iconv_charmap.c
+++ b/iconv/iconv_charmap.c
@@ -234,6 +234,8 @@ charmap_conversion (const char *from_code, struct charmap_t 
*from_charmap,
     while (++remaining < argc);
 
   /* All done.  */
+  if (output != stdout)
+    fclose (output);
   free_table (cvtbl);
   return status;
 }
-- 
2.32.0

++++++ ldconfig-concurrency.patch ++++++
--- /var/tmp/diff_new_pack.4n9LvL/_old  2021-09-17 23:25:39.445220443 +0200
+++ /var/tmp/diff_new_pack.4n9LvL/_new  2021-09-17 23:25:39.449220446 +0200
@@ -1,11 +1,11 @@
        * elf/cache.c (save_cache): Use unique temporary name.
        (save_aux_cache): Likewise.
 
-Index: glibc-2.29/elf/cache.c
+Index: glibc-2.34/elf/cache.c
 ===================================================================
---- glibc-2.29.orig/elf/cache.c
-+++ glibc-2.29/elf/cache.c
-@@ -427,12 +427,12 @@ save_cache (const char *cache_name)
+--- glibc-2.34.orig/elf/cache.c
++++ glibc-2.34/elf/cache.c
+@@ -716,12 +716,12 @@ save_cache (const char *cache_name)
    /* Write out the cache.  */
  
    /* Write cache first to a temporary file and rename it later.  */
@@ -22,15 +22,7 @@
    if (fd < 0)
      error (EXIT_FAILURE, errno, _("Can't create temporary cache file %s"),
           temp_name);
-@@ -481,6 +481,7 @@ save_cache (const char *cache_name)
-   free (file_entries_new);
-   free (file_entries);
-   free (strings_finalized.strings);
-+  free (temp_name);
- 
-   while (entries)
-     {
-@@ -804,8 +805,9 @@ save_aux_cache (const char *aux_cache_na
+@@ -1128,8 +1128,9 @@ save_aux_cache (const char *aux_cache_na
    /* Write out auxiliary cache file.  */
    /* Write auxiliary cache first to a temporary file and rename it later.  */
  
@@ -42,7 +34,7 @@
  
    /* Check that directory exists and create if needed.  */
    char *dir = strdupa (aux_cache_name);
-@@ -819,8 +821,7 @@ save_aux_cache (const char *aux_cache_na
+@@ -1143,8 +1144,7 @@ save_aux_cache (const char *aux_cache_na
      }
  
    /* Create file.  */
@@ -52,7 +44,7 @@
    if (fd < 0)
      goto out_fail;
  
-@@ -840,5 +841,6 @@ save_aux_cache (const char *aux_cache_na
+@@ -1167,5 +1167,6 @@ save_aux_cache (const char *aux_cache_na
  out_fail:
    /* Free allocated memory.  */
    free (temp_name);

++++++ ldconfig-leak-empty-paths.patch ++++++
>From b0234d79e7d82475d1666f25326ec045c045b3ed Mon Sep 17 00:00:00 2001
From: Siddhesh Poyarekar <[email protected]>
Date: Tue, 3 Aug 2021 21:10:10 +0530
Subject: [PATCH] ldconfig: avoid leak on empty paths in config file

Reviewed-by: Arjun Shankar <[email protected]>
---
 elf/ldconfig.c | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/elf/ldconfig.c b/elf/ldconfig.c
index 1037e8d0cf..b8893637f8 100644
--- a/elf/ldconfig.c
+++ b/elf/ldconfig.c
@@ -503,7 +503,11 @@ add_dir_1 (const char *line, const char *from_file, int 
from_line)
     entry->path[--i] = '\0';
 
   if (i == 0)
-    return;
+    {
+      free (entry->path);
+      free (entry);
+      return;
+    }
 
   char *path = entry->path;
   if (opt_chroot != NULL)
-- 
2.32.0

++++++ librt-null-pointer.patch ++++++
>From b805aebd42364fe696e417808a700fdb9800c9e8 Mon Sep 17 00:00:00 2001
From: Nikita Popov <[email protected]>
Date: Mon, 9 Aug 2021 20:17:34 +0530
Subject: [PATCH] librt: fix NULL pointer dereference (bug 28213)

Helper thread frees copied attribute on NOTIFY_REMOVED message
received from the OS kernel.  Unfortunately, it fails to check whether
copied attribute actually exists (data.attr != NULL).  This worked
earlier because free() checks passed pointer before actually
attempting to release corresponding memory.  But
__pthread_attr_destroy assumes pointer is not NULL.

So passing NULL pointer to __pthread_attr_destroy will result in
segmentation fault.  This scenario is possible if
notification->sigev_notify_attributes == NULL (which means default
thread attributes should be used).

Signed-off-by: Nikita Popov <[email protected]>
Reviewed-by: Siddhesh Poyarekar <[email protected]>
---
 sysdeps/unix/sysv/linux/mq_notify.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sysdeps/unix/sysv/linux/mq_notify.c 
b/sysdeps/unix/sysv/linux/mq_notify.c
index 9799dcdaa4..eccae2e4c6 100644
--- a/sysdeps/unix/sysv/linux/mq_notify.c
+++ b/sysdeps/unix/sysv/linux/mq_notify.c
@@ -131,7 +131,7 @@ helper_thread (void *arg)
               to wait until it is done with it.  */
            (void) __pthread_barrier_wait (&notify_barrier);
        }
-      else if (data.raw[NOTIFY_COOKIE_LEN - 1] == NOTIFY_REMOVED)
+      else if (data.raw[NOTIFY_COOKIE_LEN - 1] == NOTIFY_REMOVED && data.attr 
!= NULL)
        {
          /* The only state we keep is the copy of the thread attributes.  */
          __pthread_attr_destroy (data.attr);
-- 
2.32.0

Reply via email to