Hello community,

here is the log from the commit of package glibc for openSUSE:Factory checked 
in at 2020-02-15 22:21:56
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/glibc (Old)
 and      /work/SRC/openSUSE:Factory/.glibc.new.26092 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "glibc"

Sat Feb 15 22:21:56 2020 rev:234 rq:774215 version:2.31

Changes:
--------
--- /work/SRC/openSUSE:Factory/glibc/glibc.changes      2019-12-14 
12:02:03.759415431 +0100
+++ /work/SRC/openSUSE:Factory/.glibc.new.26092/glibc.changes   2020-02-15 
22:22:32.215216186 +0100
@@ -1,0 +2,40 @@
+Thu Feb 13 14:16:05 UTC 2020 - Andreas Schwab <[email protected]>
+
+- fix-locking-in-_IO_cleanup.patch: update to latest version
+
+-------------------------------------------------------------------
+Mon Feb  3 08:13:02 UTC 2020 - Andreas Schwab <[email protected]>
+
+- Update to glibc 2.31
+  * The GNU C Library now supports a feature test macro _ISOC2X_SOURCE to
+    enable features from the draft ISO C2X standard
+  * The <math.h> functions that round their results to a narrower type now
+    have corresponding type-generic macros in <tgmath.h>
+  * The function pthread_clockjoin_np has been added, enabling join with a
+    terminated thread with a specific clock
+  * New locale added: mnw_MM (Mon language spoken in Myanmar).
+  * The DNS stub resolver will optionally send the AD (authenticated data) bit
+    in queries if the trust-ad option is set via the options directive in
+    /etc/resolv.conf (or if RES_TRUSTAD is set in _res.options)
+  * The totalorder and totalordermag functions, and the corresponding
+    functions for other floating-point types, now take pointer arguments to
+    avoid signaling NaNs possibly being converted to quiet NaNs in argument
+    passing
+  * The obsolete function stime is no longer available to newly linked
+    binaries, and its declaration has been removed from <time.h>
+  * The gettimeofday function no longer reports information about a
+    system-wide time zone
+  * If a lazy binding failure happens during dlopen, during the execution of
+    an ELF constructor, the process is now terminated
+- malloc-info-whitespace.patch, riscv-vfork.patch,
+  prefer-map-32bit-exec.patch, backtrace-powerpc.patch,
+  ldconfig-dynstr.patch: Removed.
+
+-------------------------------------------------------------------
+Tue Jan 21 15:08:13 UTC 2020 - Andreas Schwab <[email protected]>
+
+- backtrace-powerpc.patch: Fix array overflow in backtrace on PowerPC
+  (bsc#1158996, BZ #25423)
+- Drop support for pluggable gconv modules (bsc#1159851)
+
+-------------------------------------------------------------------

Old:
----
  glibc-2.30.tar.xz
  glibc-2.30.tar.xz.sig
  ldconfig-dynstr.patch
  malloc-info-whitespace.patch
  prefer-map-32bit-exec.patch
  riscv-vfork.patch

New:
----
  glibc-2.31.tar.xz
  glibc-2.31.tar.xz.sig

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

Other differences:
------------------
++++++ glibc.spec ++++++
--- /var/tmp/diff_new_pack.srXqrN/_old  2020-02-15 22:22:52.947227395 +0100
+++ /var/tmp/diff_new_pack.srXqrN/_new  2020-02-15 22:22:52.947227395 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package glibc
 #
-# Copyright (c) 2019 SUSE LLC
+# Copyright (c) 2020 SUSE LLC
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -148,7 +148,7 @@
 %define enablekernel 4.15
 %endif
 
-Version:        2.30
+Version:        2.31
 Release:        0
 %if !%{build_snapshot}
 %define git_id 0a8262a1b2
@@ -257,12 +257,6 @@
 ###
 # Patches from upstream
 ###
-# PATCH-FIX-UPSTREAM malloc: Remove unwanted leading whitespace in malloc_info 
(BZ #24867)
-Patch1000:      malloc-info-whitespace.patch
-# PATCH-FIX-UPSTREAM Fix RISC-V vfork build with Linux 5.3 kernel headers
-Patch1001:      riscv-vfork.patch
-# PATCH-FIX-UPSTREAM rtld: Check __libc_enable_secure before honoring 
LD_PREFER_MAP_32BIT_EXEC (CVE-2019-19126, BZ #25204)
-Patch1002:      prefer-map-32bit-exec.patch
 
 ### 
 # Patches awaiting upstream approval
@@ -271,10 +265,8 @@
 Patch2000:      fix-locking-in-_IO_cleanup.patch
 # PATCH-FIX-UPSTREAM Avoid concurrency problem in ldconfig (BZ #23973)
 Patch2001:      ldconfig-concurrency.patch
-# PATCH-FIX-UPSTREAM ldconfig: handle .dynstr located in separate segment (BZ 
#25087)
-Patch2002:      ldconfig-dynstr.patch
 # PATCH-FIX-UPSTREAM Fix buffer overrun in EUC-KR conversion module (BZ #24973)
-Patch2003:      euc-kr-overrun.patch
+Patch2002:      euc-kr-overrun.patch
 
 # Non-glibc patches
 # PATCH-FIX-OPENSUSE Remove debianisms from manpages
@@ -472,14 +464,9 @@
 %patch304 -p1
 %patch306 -p1
 
-%patch1000 -p1
-%patch1001 -p1
-%patch1002 -p1
-
 %patch2000 -p1
 %patch2001 -p1
 %patch2002 -p1
-%patch2003 -p1
 
 %patch3000
 
@@ -1044,11 +1031,6 @@
 %postun -p /sbin/ldconfig
 
 %post locale-base
-for l in /usr/share/locale/locale.alias %{_libdir}/gconv/gconv-modules; do
-       [ -d "$l.d" ] || continue
-       echo "###X# The following is autogenerated from extra files in the .d 
directory:" >>"$l"
-       cat "$l.d"/* >>"$l"
-done
 /usr/sbin/iconvconfig
 
 %post info
@@ -1263,9 +1245,6 @@
        %{_libdir}/libnldbl_nonshared.a
 %endif
 %{_libdir}/libmcheck.a
-%ifarch x86_64
-%{_libdir}/libmvec_nonshared.a
-%endif
 
 %files devel-static
 %defattr(-,root,root)

++++++ fix-locking-in-_IO_cleanup.patch ++++++
--- /var/tmp/diff_new_pack.srXqrN/_old  2020-02-15 22:22:52.999227423 +0100
+++ /var/tmp/diff_new_pack.srXqrN/_new  2020-02-15 22:22:52.999227423 +0100
@@ -1,70 +1,34 @@
-Always do locking when accessing streams (bug 15142)
+Always do locking when accessing streams (bug 15142, bug 14697)
 
-During exit, skip files that are currently locked to avoid deadlock.
+Now that abort no longer calls fflush there is no reason to avoid locking
+the stdio streams anywhere.  This fixes a conformance issue and potential
+heap corruption during exit.  The test nptl/tst-stdio1 is removed as that
+was expecting the problematic behaviour.
 
-       [BZ #15142]
-       * libio/libio.h (_IO_ftrylockfile) [_IO_MTSAVE_IO]: Define.
-       * libio/genops.c (_IO_flush_all_lockp): Make static.  Rename
-       argument to skip_locked, callers changed.  Skip files that are
-       locked if skip_locked.
-       (_IO_unbuffer_all): Lock files before access, but skip locked
-       files.
-       * libio/libioP.h (_IO_flush_all_lockp): Don't declare.
-
-Index: glibc-2.27/libio/libio.h
-===================================================================
---- glibc-2.27.orig/libio/libio.h
-+++ glibc-2.27/libio/libio.h
-@@ -33,11 +33,15 @@ libc_hidden_proto (_IO_vfscanf)
-   if (((_fp)->_flags & _IO_USER_LOCK) == 0) _IO_lock_lock (*(_fp)->_lock)
- #  define _IO_funlockfile(_fp) \
-   if (((_fp)->_flags & _IO_USER_LOCK) == 0) _IO_lock_unlock (*(_fp)->_lock)
-+#  define _IO_ftrylockfile(_fp) \
-+  (((_fp)->_flags & _IO_USER_LOCK) == 0 ? _IO_lock_trylock (*(_fp)->_lock) : 
0)
- # else
- #  define _IO_flockfile(_fp) \
-   if (((_fp)->_flags & _IO_USER_LOCK) == 0) _IO_flockfile (_fp)
- #  define _IO_funlockfile(_fp) \
-   if (((_fp)->_flags & _IO_USER_LOCK) == 0) _IO_funlockfile (_fp)
-+#  define _IO_ftrylockfile(_fp) \
-+  (((_fp)->_flags & _IO_USER_LOCK) == 0 ? _IO_ftrylockfile (_fp) : 0)
- # endif
- #endif /* _IO_MTSAFE_IO */
- 
-Index: glibc-2.27/libio/genops.c
+Index: glibc-2.31/libio/genops.c
 ===================================================================
---- glibc-2.27.orig/libio/genops.c
-+++ glibc-2.27/libio/genops.c
-@@ -744,8 +744,8 @@ _IO_adjust_column (unsigned start, const
- }
+--- glibc-2.31.orig/libio/genops.c
++++ glibc-2.31/libio/genops.c
+@@ -682,7 +682,7 @@ _IO_adjust_column (unsigned start, const
  libc_hidden_def (_IO_adjust_column)
  
--int
+ int
 -_IO_flush_all_lockp (int do_lock)
-+static int
-+_IO_flush_all_lockp (bool skip_locked)
++_IO_flush_all (void)
  {
    int result = 0;
    FILE *fp;
-@@ -758,7 +758,16 @@ _IO_flush_all_lockp (int do_lock)
+@@ -695,8 +695,7 @@ _IO_flush_all_lockp (int do_lock)
    for (fp = (FILE *) _IO_list_all; fp != NULL; fp = fp->_chain)
      {
        run_fp = fp;
 -      if (do_lock)
-+      if (skip_locked)
-+      {
-+        /* Skip files that are currently locked.  */
-+        if (_IO_ftrylockfile (fp))
-+          {
-+            run_fp = NULL;
-+            continue;
-+          }
-+      }
-+      else
-       _IO_flockfile (fp);
+-      _IO_flockfile (fp);
++      _IO_flockfile (fp);
  
        if (((fp->_mode <= 0 && fp->_IO_write_ptr > fp->_IO_write_base)
-@@ -769,8 +778,7 @@ _IO_flush_all_lockp (int do_lock)
+          || (_IO_vtable_offset (fp) == 0
+@@ -706,8 +705,7 @@ _IO_flush_all_lockp (int do_lock)
          && _IO_OVERFLOW (fp, EOF) == EOF)
        result = EOF;
  
@@ -74,31 +38,32 @@
        run_fp = NULL;
      }
  
-@@ -787,7 +795,7 @@ int
- _IO_flush_all (void)
- {
-   /* We want locking.  */
--  return _IO_flush_all_lockp (1);
-+  return _IO_flush_all_lockp (false);
+@@ -718,14 +716,6 @@ _IO_flush_all_lockp (int do_lock)
+ 
+   return result;
  }
+-
+-
+-int
+-_IO_flush_all (void)
+-{
+-  /* We want locking.  */
+-  return _IO_flush_all_lockp (1);
+-}
  libc_hidden_def (_IO_flush_all)
  
-@@ -852,6 +860,14 @@ _IO_unbuffer_all (void)
- 
-   for (fp = (FILE *) _IO_list_all; fp; fp = fp->_chain)
+ void
+@@ -791,6 +781,9 @@ _IO_unbuffer_all (void)
      {
-+      run_fp = fp;
-+      /* Skip files that are currently locked.  */
-+      if (_IO_ftrylockfile (fp))
-+      {
-+        run_fp = NULL;
-+        continue;
-+      }
-+
        int legacy = 0;
  
++      run_fp = fp;
++      _IO_flockfile (fp);
++
  #if SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_1)
-@@ -863,18 +879,6 @@ _IO_unbuffer_all (void)
+       if (__glibc_unlikely (_IO_vtable_offset (fp) != 0))
+       legacy = 1;
+@@ -800,18 +793,6 @@ _IO_unbuffer_all (void)
          /* Iff stream is un-orientated, it wasn't used. */
          && (legacy || fp->_mode != 0))
        {
@@ -117,7 +82,7 @@
          if (! legacy && ! dealloc_buffers && !(fp->_flags & _IO_USER_BUF))
            {
              fp->_flags |= _IO_USER_BUF;
-@@ -881,17 +885,15 @@ _IO_unbuffer_all (void)
+@@ -825,17 +806,15 @@ _IO_unbuffer_all (void)
  
          if (! legacy && fp->_mode > 0)
            _IO_wsetb (fp, NULL, NULL, 0);
@@ -138,24 +103,22 @@
      }
  
  #ifdef _IO_MTSAFE_IO
-@@ -916,9 +918,9 @@ libc_freeres_fn (buffer_free)
+@@ -861,9 +840,7 @@ libc_freeres_fn (buffer_free)
  int
  _IO_cleanup (void)
  {
 -  /* We do *not* want locking.  Some threads might use streams but
 -     that is their problem, we flush them underneath them.  */
 -  int result = _IO_flush_all_lockp (0);
-+  /* We want to skip locked streams.  Some threads might use streams but
-+     that is their problem, we don't flush those.  */
-+  int result = _IO_flush_all_lockp (true);
++  int result = _IO_flush_all ();
  
    /* We currently don't have a reliable mechanism for making sure that
       C++ static destructors are executed in the correct order.
-Index: glibc-2.27/libio/libioP.h
+Index: glibc-2.31/libio/libioP.h
 ===================================================================
---- glibc-2.27.orig/libio/libioP.h
-+++ glibc-2.27/libio/libioP.h
-@@ -486,7 +486,6 @@ extern int _IO_new_do_write (FILE *, con
+--- glibc-2.31.orig/libio/libioP.h
++++ glibc-2.31/libio/libioP.h
+@@ -487,7 +487,6 @@ extern int _IO_new_do_write (FILE *, con
  extern int _IO_old_do_write (FILE *, const char *, size_t);
  extern int _IO_wdo_write (FILE *, const wchar_t *, size_t);
  libc_hidden_proto (_IO_wdo_write)
@@ -163,3 +126,77 @@
  extern int _IO_flush_all (void);
  libc_hidden_proto (_IO_flush_all)
  extern int _IO_cleanup (void);
+Index: glibc-2.31/nptl/Makefile
+===================================================================
+--- glibc-2.31.orig/nptl/Makefile
++++ glibc-2.31/nptl/Makefile
+@@ -295,7 +295,7 @@ tests = tst-attr1 tst-attr2 tst-attr3 ts
+       tst-signal6 \
+       tst-exec1 tst-exec2 tst-exec3 tst-exec4 tst-exec5 \
+       tst-exit1 tst-exit2 tst-exit3 \
+-      tst-stdio1 tst-stdio2 \
++      tst-stdio2 \
+       tst-stack1 tst-stack2 tst-stack3 tst-stack4 tst-pthread-getattr \
+       tst-pthread-attr-affinity tst-pthread-mutexattr \
+       tst-unload \
+Index: glibc-2.31/nptl/tst-stdio1.c
+===================================================================
+--- glibc-2.31.orig/nptl/tst-stdio1.c
++++ /dev/null
+@@ -1,56 +0,0 @@
+-/* Copyright (C) 2002-2020 Free Software Foundation, Inc.
+-   This file is part of the GNU C Library.
+-   Contributed by Ulrich Drepper <[email protected]>, 2002.
+-
+-   The GNU C Library is free software; you can redistribute it and/or
+-   modify it under the terms of the GNU Lesser General Public
+-   License as published by the Free Software Foundation; either
+-   version 2.1 of the License, or (at your option) any later version.
+-
+-   The GNU C Library is distributed in the hope that it will be useful,
+-   but WITHOUT ANY WARRANTY; without even the implied warranty of
+-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+-   Lesser General Public License for more details.
+-
+-   You should have received a copy of the GNU Lesser General Public
+-   License along with the GNU C Library; if not, see
+-   <https://www.gnu.org/licenses/>.  */
+-
+-#include <pthread.h>
+-#include <signal.h>
+-#include <stdio.h>
+-#include <unistd.h>
+-
+-static int do_test (void);
+-
+-#define TEST_FUNCTION do_test ()
+-#include "../test-skeleton.c"
+-
+-static void *tf (void *a)
+-{
+-  flockfile (stdout);
+-  /* This call should never return.  */
+-  return a;
+-}
+-
+-
+-int
+-do_test (void)
+-{
+-  pthread_t th;
+-
+-  flockfile (stdout);
+-
+-  if (pthread_create (&th, NULL, tf, NULL) != 0)
+-    {
+-      write_message ("create failed\n");
+-      _exit (1);
+-    }
+-
+-  delayed_exit (1);
+-  xpthread_join (th);
+-
+-  puts ("join returned");
+-
+-  return 1;
+-}

++++++ glibc-2.30.tar.xz -> glibc-2.31.tar.xz ++++++
/work/SRC/openSUSE:Factory/glibc/glibc-2.30.tar.xz 
/work/SRC/openSUSE:Factory/.glibc.new.26092/glibc-2.31.tar.xz differ: char 25, 
line 1

++++++ glibc-version.diff ++++++
--- /var/tmp/diff_new_pack.srXqrN/_old  2020-02-15 22:22:53.039227445 +0100
+++ /var/tmp/diff_new_pack.srXqrN/_new  2020-02-15 22:22:53.039227445 +0100
@@ -8,7 +8,7 @@
  static const char banner[] =
 -"GNU C Library "PKGVERSION RELEASE" release version "VERSION".\n\
 +"GNU C Library "PKGVERSION RELEASE" release version "VERSION" (git 
"GITID").\n\
- Copyright (C) 2019 Free Software Foundation, Inc.\n\
+ Copyright (C) 2020 Free Software Foundation, Inc.\n\
  This is free software; see the source for copying conditions.\n\
  There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A\n\
  PARTICULAR PURPOSE.\n\

++++++ nsswitch.conf ++++++
--- /var/tmp/diff_new_pack.srXqrN/_old  2020-02-15 22:22:53.103227480 +0100
+++ /var/tmp/diff_new_pack.srXqrN/_new  2020-02-15 22:22:53.103227480 +0100
@@ -4,39 +4,71 @@
 # An example Name Service Switch config file. This file should be
 # sorted with the most-used services at the beginning.
 #
-# The entry '[NOTFOUND=return]' means that the search for an
-# entry should stop if the search in the previous entry turned
-# up nothing. Note that if the search failed due to some other reason
-# (like no NIS server responding) then the search continues with the
-# next entry.
-#
-# Legal entries are:
-#
-#       compat                  Use compatibility setup
-#       nisplus                 Use NIS+ (NIS version 3)
-#       nis                     Use NIS (NIS version 2), also called YP
-#       dns                     Use DNS (Domain Name Service)
-#       files                   Use the local files
-#       [NOTFOUND=return]       Stop searching if not found so far
+# Valid databases are: aliases, ethers, group, gshadow, hosts,
+# initgroups, netgroup, networks, passwd, protocols, publickey,
+# rpc, services, and shadow.
 #
-# For more information, please read the nsswitch.conf.5 manual page.
+# Valid service provider entries include (in alphabetical order):
 #
+#      compat                  Use /etc files plus *_compat pseudo-db
+#      db                      Use the pre-processed /var/db files
+#      dns                     Use DNS (Domain Name Service)
+#      files                   Use the local files in /etc
+#      hesiod                  Use Hesiod (DNS) for user lookups
+#      nis                     Use NIS (NIS version 2), also called YP
+#      nisplus                 Use NIS+ (NIS version 3)
+#
+# See `info libc 'NSS Basics'` for more information.
+#
+# Commonly used alternative service providers (may need installation):
+#
+#      ldap                    Use LDAP directory server
+#      myhostname              Use systemd host names
+#      mymachines              Use systemd machine names
+#      mdns*, mdns*_minimal    Use Avahi mDNS/DNS-SD
+#      resolve                 Use systemd resolved resolver
+#      sss                     Use System Security Services Daemon (sssd)
+#      systemd                 Use systemd for dynamic user option
+#      winbind                 Use Samba winbind support
+#      wins                    Use Samba wins support
+#      wrapper                 Use wrapper module for testing
+#
+# Notes:
+#
+# 'sssd' performs its own 'files'-based caching, so it should generally
+# come before 'files'.
+#
+# WARNING: Running nscd with a secondary caching service like sssd may
+#         lead to unexpected behaviour, especially with how long
+#         entries are cached.
+#
+# Installation instructions:
+#
+# To use 'db', install the appropriate package(s) (provide 'makedb' and
+# libnss_db.so.*), and place the 'db' in front of 'files' for entries
+# you want to be looked up first in the databases, like this:
+#
+# passwd:    db files
+# shadow:    db files
+# group:     db files
 
-passwd: compat
-group:  compat
-shadow: compat
+passwd:                compat
+group:         compat
+shadow:                compat
 
 hosts:         files dns
 networks:      files dns
 
-services:      files usrfiles
-protocols:     files usrfiles
-rpc:           files usrfiles
+aliases:       files usrfiles
 ethers:                files usrfiles
-netmasks:      files
+gshadow:       files usrfiles
+initgroups:    files
 netgroup:      files nis
+protocols:     files usrfiles
 publickey:     files
+rpc:           files usrfiles
+services:      files usrfiles
 
-bootparams:    files
 automount:     files nis
-aliases:       files usrfiles
+bootparams:    files
+netmasks:      files


Reply via email to