From df9ce2ff57e675edea493144401a1e1c9ed0f2b5 Mon Sep 17 00:00:00 2001 From: DistroBaker Date: Tue, 15 Dec 2020 10:59:21 +0000 Subject: [PATCH] Merged update from upstream sources This is an automated DistroBaker update from upstream sources. If you do not know what this is about or would like to opt out, contact the OSCI team. Source: https://src.fedoraproject.org/rpms/glibc.git#525dee4c87180db08e1776ad3cb0e66a9b38e81f --- glibc-rh1906066.patch | 59 +++++++++++++++++++++++++++++++++++++++++++ glibc.spec | 31 ++++++++++++++++++----- sources | 2 +- 3 files changed, 84 insertions(+), 8 deletions(-) create mode 100644 glibc-rh1906066.patch diff --git a/glibc-rh1906066.patch b/glibc-rh1906066.patch new file mode 100644 index 0000000..902e353 --- /dev/null +++ b/glibc-rh1906066.patch @@ -0,0 +1,59 @@ +From d74a39158ab4aafa8af874e996bf5ddbde593bc0 Mon Sep 17 00:00:00 2001 +From: DJ Delorie +Date: Wed, 9 Dec 2020 21:46:30 -0500 +Subject: nsswitch: handle missing actions properly + +Some internal functions need to know if a database has a nonzero +list of actions; success getting the database does not guarantee +that. Add checks for such as needed. + +Skip the ":" in each nsswitch.conf line so as not to add a dummy +action libnss_:.so + +diff --git a/grp/initgroups.c b/grp/initgroups.c +index a60ca1c395..a0a836d862 100644 +--- a/grp/initgroups.c ++++ b/grp/initgroups.c +@@ -72,11 +72,13 @@ internal_getgrouplist (const char *user, gid_t group, long int *size, + + nss_action_list nip; + +- if (__nss_database_get (nss_database_initgroups, &nip)) ++ if (__nss_database_get (nss_database_initgroups, &nip) ++ && nip != NULL) + { + use_initgroups_entry = true; + } +- else if (__nss_database_get (nss_database_group, &nip)) ++ else if (__nss_database_get (nss_database_group, &nip) ++ && nip != NULL) + { + use_initgroups_entry = false; + } +diff --git a/nss/nss_database.c b/nss/nss_database.c +index e8c307d1f3..a036e95fbf 100644 +--- a/nss/nss_database.c ++++ b/nss/nss_database.c +@@ -212,7 +212,8 @@ process_line (struct nss_database_data *data, char *line) + if (line[0] == '\0' || name == line) + /* Syntax error. Skip this line. */ + return true; +- *line++ = '\0'; ++ while (line[0] != '\0' && (isspace (line[0]) || line[0] == ':')) ++ *line++ = '\0'; + + int db = name_to_database_index (name); + if (db < 0) +diff --git a/nss/nsswitch.c b/nss/nsswitch.c +index 40109c744d..921062e04f 100644 +--- a/nss/nsswitch.c ++++ b/nss/nsswitch.c +@@ -81,7 +81,7 @@ __nss_database_lookup2 (const char *database, const char *alternate_name, + if (database_names[database_id] == NULL) + return -1; + +- if (__nss_database_get (database_id, ni)) ++ if (__nss_database_get (database_id, ni) && *ni) + { + /* Success. */ + return 0; diff --git a/glibc.spec b/glibc.spec index 51446ec..af60777 100644 --- a/glibc.spec +++ b/glibc.spec @@ -1,4 +1,4 @@ -%define glibcsrcdir glibc-2.32.9000-366-g4c38c1a229 +%define glibcsrcdir glibc-2.32.9000-374-g088e962537 %define glibcversion 2.32.9000 # Pre-release tarballs are pulled in from git using a command that is # effectively: @@ -27,12 +27,8 @@ %bcond_without benchtests # Default: Not bootstrapping. %bcond_with bootstrap -# Default: Enable using -Werror (except for ELN). -%if 0%{?rhel} > 0 -%bcond_with werror -%else +# Default: Enable using -Werror %bcond_without werror -%endif # Default: Always build documentation. %bcond_without docs @@ -100,7 +96,7 @@ Summary: The GNU libc libraries Name: glibc Version: %{glibcversion} -Release: 18%{?dist} +Release: 21%{?dist} # In general, GPLv2+ is used by programs, LGPLv2+ is used for # libraries. @@ -162,6 +158,9 @@ Patch29: glibc-fedora-nsswitch.patch Patch30: glibc-deprecated-selinux-makedb.patch Patch31: glibc-deprecated-selinux-nscd.patch +# Temporary until official patch is committed upstream +Patch99: glibc-rh1906066.patch + ############################################################################## # Continued list of core "glibc" package information: ############################################################################## @@ -2258,6 +2257,24 @@ fi %files -f compat-libpthread-nonshared.filelist -n compat-libpthread-nonshared %changelog +* Mon Dec 14 2020 Florian Weimer - 2.32.9000-21 +- Re-enable -Werror everywhere (#1888246) + +* Wed Dec 09 2020 DJ Delorie - 2.32.9000-20 +- nsswitch: handle missing actions properly (temporary fix for 1906066) + +* Mon Dec 07 2020 Arjun Shankar - 2.32.9000-19 +- Auto-sync with upstream branch master, + commit 088e9625378f25607acff3daf7a79cbdee497043: +- x86: Rename readelflib.c +- nsswitch: use new internal API (callers) +- nsswitch: user new internal API (tests) +- nsswitch: use new internal API (core) +- nss: Implement +- : New abstraction for combining NSS modules and NSS actions +- nss: Introduce +- Add scripts/move-symbol-to-libc.py + * Fri Dec 04 2020 Arjun Shankar - 2.32.9000-18 - Drop glibc-revert-fxstat-compat.patch; applied upstream. - Drop glibc-revert-mknod-compat.patch; applied upstream. diff --git a/sources b/sources index 137c9f5..1dd85ba 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (glibc-2.32.9000-366-g4c38c1a229.tar.xz) = fbf6178b6bd9e1e752173af3ddaca4e32e7ccc34efaa654eec287697b9d219214bd6ca82231d2b16adab01f135d396934fb08995325a8004e59c9b376a383704 +SHA512 (glibc-2.32.9000-374-g088e962537.tar.xz) = e621b9a2e28491a1823f13541dc2d17ad812e6c8a12ae1b128dce0697280b8eb0571a06570b9e05ea1004d20d639f0193dfe425974bffccb9ff83bc14fd7c629