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
This commit is contained in:
DistroBaker 2020-12-15 10:59:21 +00:00
parent 6ce6a082b9
commit df9ce2ff57
3 changed files with 84 additions and 8 deletions

59
glibc-rh1906066.patch Normal file
View File

@ -0,0 +1,59 @@
From d74a39158ab4aafa8af874e996bf5ddbde593bc0 Mon Sep 17 00:00:00 2001
From: DJ Delorie <dj@redhat.com>
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;

View File

@ -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 <fweimer@redhat.com> - 2.32.9000-21
- Re-enable -Werror everywhere (#1888246)
* Wed Dec 09 2020 DJ Delorie <dj@redhat.com> - 2.32.9000-20
- nsswitch: handle missing actions properly (temporary fix for 1906066)
* Mon Dec 07 2020 Arjun Shankar <arjun@redhat.com> - 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 <nss_database.h>
- <nss_action.h>: New abstraction for combining NSS modules and NSS actions
- nss: Introduce <nss_module.h>
- Add scripts/move-symbol-to-libc.py
* Fri Dec 04 2020 Arjun Shankar <arjun@redhat.com> - 2.32.9000-18
- Drop glibc-revert-fxstat-compat.patch; applied upstream.
- Drop glibc-revert-mknod-compat.patch; applied upstream.

View File

@ -1 +1 @@
SHA512 (glibc-2.32.9000-366-g4c38c1a229.tar.xz) = fbf6178b6bd9e1e752173af3ddaca4e32e7ccc34efaa654eec287697b9d219214bd6ca82231d2b16adab01f135d396934fb08995325a8004e59c9b376a383704
SHA512 (glibc-2.32.9000-374-g088e962537.tar.xz) = e621b9a2e28491a1823f13541dc2d17ad812e6c8a12ae1b128dce0697280b8eb0571a06570b9e05ea1004d20d639f0193dfe425974bffccb9ff83bc14fd7c629