forked from pool/glibc
- Upgrade to glibc-2.11.3
- Just few more bugfixes since the latest upgrade - Remove explicit support for nss SPLIT_GROUPS setting; glibc from 2.11 on should handle this automagically. OBS-URL: https://build.opensuse.org/package/show/Base:System/glibc?expand=0&rev=44
This commit is contained in:
parent
9f6e6245a2
commit
cdc77a6a68
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:ee436e954b06aaed8ed1bc003e5ba823c728835d2025b7e3238dc61400ccb0d2
|
||||
size 15667714
|
3
glibc-2.11.3.tar.bz2
Normal file
3
glibc-2.11.3.tar.bz2
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:3e3402f050984b78d0784efbd2115d90a4bb4376803fd3f00c25aee28cf7fb92
|
||||
size 15669411
|
@ -1,37 +0,0 @@
|
||||
2010-05-31 Petr Baudis <pasky@suse.cz>
|
||||
|
||||
* elf/ldconfig.c: Allow aux_cache_file open()ing to fail silently
|
||||
even in the chroot mode.
|
||||
|
||||
|
||||
diff --git a/elf/ldconfig.c b/elf/ldconfig.c
|
||||
index 6e71b09..6ba8e07 100644
|
||||
--- a/elf/ldconfig.c
|
||||
+++ b/elf/ldconfig.c
|
||||
@@ -1359,14 +1359,9 @@ main (int argc, char **argv)
|
||||
|
||||
const char *aux_cache_file = _PATH_LDCONFIG_AUX_CACHE;
|
||||
if (opt_chroot)
|
||||
- {
|
||||
- aux_cache_file = chroot_canon (opt_chroot, aux_cache_file);
|
||||
- if (aux_cache_file == NULL)
|
||||
- error (EXIT_FAILURE, errno, _("Can't open cache file %s\n"),
|
||||
- _PATH_LDCONFIG_AUX_CACHE);
|
||||
- }
|
||||
+ aux_cache_file = chroot_canon (opt_chroot, aux_cache_file);
|
||||
|
||||
- if (! opt_ignore_aux_cache)
|
||||
+ if (! opt_ignore_aux_cache && aux_cache_file)
|
||||
load_aux_cache (aux_cache_file);
|
||||
else
|
||||
init_aux_cache ();
|
||||
@@ -1376,7 +1371,8 @@ main (int argc, char **argv)
|
||||
if (opt_build_cache)
|
||||
{
|
||||
save_cache (cache_file);
|
||||
- save_aux_cache (aux_cache_file);
|
||||
+ if (aux_cache_file)
|
||||
+ save_aux_cache (aux_cache_file);
|
||||
}
|
||||
|
||||
return 0;
|
@ -1,39 +0,0 @@
|
||||
2010-05-31 Petr Baudis <pasky@suse.cz>
|
||||
|
||||
* nis/nss_compat/compat-initgroups.c (internal_getgrent_r): Fix
|
||||
initialization of skip_initgroups_dyn.
|
||||
|
||||
diff --git a/nis/nss_compat/compat-initgroups.c b/nis/nss_compat/compat-initgroups.c
|
||||
index 07a3b92..de8d95c 100644
|
||||
--- a/nis/nss_compat/compat-initgroups.c
|
||||
+++ b/nis/nss_compat/compat-initgroups.c
|
||||
@@ -474,18 +474,21 @@ internal_getgrent_r (ent_t *ent, char *buffer, size_t buflen, const char *user,
|
||||
/* If the selected module does not support getgrent_r or
|
||||
initgroups_dyn, abort. We cannot find the needed group
|
||||
entries. */
|
||||
- if (nss_getgrent_r == NULL && nss_initgroups_dyn == NULL)
|
||||
+ if (nss_initgroups_dyn == NULL || nss_getgrgid_r == NULL)
|
||||
+ {
|
||||
+ if (nss_setgrent != NULL)
|
||||
+ {
|
||||
+ nss_setgrent (1);
|
||||
+ ent->need_endgrent = true;
|
||||
+ }
|
||||
+ ent->skip_initgroups_dyn = true;
|
||||
+ }
|
||||
+
|
||||
+ if (ent->skip_initgroups_dyn && nss_getgrent_r == NULL)
|
||||
return NSS_STATUS_UNAVAIL;
|
||||
|
||||
ent->files = false;
|
||||
|
||||
- if (nss_initgroups_dyn == NULL && nss_setgrent != NULL)
|
||||
- {
|
||||
- nss_setgrent (1);
|
||||
- ent->need_endgrent = true;
|
||||
- }
|
||||
- ent->skip_initgroups_dyn = true;
|
||||
-
|
||||
return getgrent_next_nss (ent, buffer, buflen, user, group,
|
||||
start, size, groupsp, limit, errnop);
|
||||
}
|
@ -1,101 +0,0 @@
|
||||
2009-04-19 Petr Baudis <pasky@suse.cz>
|
||||
|
||||
* nis/Makefile (libnss_compat-routines): Add build dependency
|
||||
on nss-nis.
|
||||
* nis/nss: New variable SPLIT_GROUPS.
|
||||
* nis/libnsl.h: New flag NSS_FLAG_SPLIT_GROUPS.
|
||||
* nis/nss-default.c: Likewise.
|
||||
* nss_compat/compat-initgroups.c: Do not use initgroups_dyn
|
||||
in case NSS_FLAG_SPLIT_GROUPS is set.
|
||||
|
||||
Index: nis/Makefile
|
||||
===================================================================
|
||||
--- nis/Makefile.orig
|
||||
+++ nis/Makefile
|
||||
@@ -56,7 +56,8 @@ libnsl-routines = yp_xdr ypclnt ypupdate
|
||||
nis_findserv nis_callback nis_clone_dir nis_clone_obj\
|
||||
nis_clone_res nss-default
|
||||
|
||||
-libnss_compat-routines := $(addprefix compat-,grp pwd spwd initgroups)
|
||||
+libnss_compat-routines := $(addprefix compat-,grp pwd spwd initgroups) \
|
||||
+ nss-nis
|
||||
libnss_compat-inhibit-o = $(filter-out .os,$(object-suffixes))
|
||||
|
||||
libnss_nis-routines := $(addprefix nis-,$(databases)) nis-initgroups \
|
||||
Index: nis/libnsl.h
|
||||
===================================================================
|
||||
--- nis/libnsl.h.orig
|
||||
+++ nis/libnsl.h
|
||||
@@ -21,6 +21,7 @@
|
||||
#define NSS_FLAG_NETID_AUTHORITATIVE 1
|
||||
#define NSS_FLAG_SERVICES_AUTHORITATIVE 2
|
||||
#define NSS_FLAG_SETENT_BATCH_READ 4
|
||||
+#define NSS_FLAG_SPLIT_GROUPS 8
|
||||
|
||||
|
||||
/* Get current set of default flags. */
|
||||
Index: nis/nss
|
||||
===================================================================
|
||||
--- nis/nss.orig
|
||||
+++ nis/nss
|
||||
@@ -1,7 +1,7 @@
|
||||
# /etc/default/nss
|
||||
# This file can theoretically contain a bunch of customization variables
|
||||
# for Name Service Switch in the GNU C library. For now there are only
|
||||
-# three variables:
|
||||
+# four variables:
|
||||
#
|
||||
# NETID_AUTHORITATIVE
|
||||
# If set to TRUE, the initgroups() function will accept the information
|
||||
@@ -26,3 +26,11 @@
|
||||
# might result into a network communication with the server to get
|
||||
# the next entry.
|
||||
#SETENT_BATCH_READ=TRUE
|
||||
+#
|
||||
+# SPLIT_GROUPS
|
||||
+# If set to TRUE, the nss_compat module's initgroups() function will
|
||||
+# not use the NIS initgroups interface for retrieving group information.
|
||||
+# This allows one NIS group to be split into multiple database entries
|
||||
+# with same gid, a practice used to overcome entry length limitations.
|
||||
+# The downside is a certain performance degradation.
|
||||
+#SPLIT_GROUPS=TRUE
|
||||
Index: nis/nss-default.c
|
||||
===================================================================
|
||||
--- nis/nss-default.c.orig
|
||||
+++ nis/nss-default.c
|
||||
@@ -47,7 +47,8 @@ static const struct
|
||||
#define STRNLEN(s) s, sizeof (s) - 1
|
||||
{ STRNLEN ("NETID_AUTHORITATIVE"), NSS_FLAG_NETID_AUTHORITATIVE },
|
||||
{ STRNLEN ("SERVICES_AUTHORITATIVE"), NSS_FLAG_SERVICES_AUTHORITATIVE },
|
||||
- { STRNLEN ("SETENT_BATCH_READ"), NSS_FLAG_SETENT_BATCH_READ }
|
||||
+ { STRNLEN ("SETENT_BATCH_READ"), NSS_FLAG_SETENT_BATCH_READ },
|
||||
+ { STRNLEN ("SPLIT_GROUPS"), NSS_FLAG_SPLIT_GROUPS },
|
||||
};
|
||||
#define nvars (sizeof (vars) / sizeof (vars[0]))
|
||||
|
||||
Index: nis/nss_compat/compat-initgroups.c
|
||||
===================================================================
|
||||
--- nis/nss_compat/compat-initgroups.c.orig
|
||||
+++ nis/nss_compat/compat-initgroups.c
|
||||
@@ -32,6 +32,9 @@
|
||||
#include <bits/libc-lock.h>
|
||||
#include <kernel-features.h>
|
||||
|
||||
+/* Get the declaration of the NSS flags. */
|
||||
+#include <libnsl.h>
|
||||
+
|
||||
static service_user *ni;
|
||||
/* Type of the lookup function. */
|
||||
static enum nss_status (*nss_initgroups_dyn) (const char *, gid_t,
|
||||
@@ -107,7 +110,10 @@ init_nss_interface (void)
|
||||
if (ni == NULL
|
||||
&& __nss_database_lookup ("group_compat", NULL, "nis", &ni) >= 0)
|
||||
{
|
||||
- nss_initgroups_dyn = __nss_lookup_function (ni, "initgroups_dyn");
|
||||
+ if (_nsl_default_nss () & NSS_FLAG_SPLIT_GROUPS)
|
||||
+ nss_initgroups_dyn = NULL;
|
||||
+ else
|
||||
+ nss_initgroups_dyn = __nss_lookup_function (ni, "initgroups_dyn");
|
||||
nss_getgrnam_r = __nss_lookup_function (ni, "getgrnam_r");
|
||||
nss_getgrgid_r = __nss_lookup_function (ni, "getgrgid_r");
|
||||
nss_setgrent = __nss_lookup_function (ni, "setgrent");
|
@ -1,3 +1,15 @@
|
||||
-------------------------------------------------------------------
|
||||
Tue Nov 30 01:53:42 CET 2010 - pbaudis@suse.cz
|
||||
|
||||
- Upgrade to glibc-2.11.3
|
||||
- Just few more bugfixes since the latest upgrade
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Nov 16 04:03:01 CET 2010 - pbaudis@suse.cz
|
||||
|
||||
- Remove explicit support for nss SPLIT_GROUPS setting; glibc from
|
||||
2.11 on should handle this automagically.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Nov 15 18:43:35 CET 2010 - pbaudis@suse.cz
|
||||
|
||||
|
12
glibc.spec
12
glibc.spec
@ -1,5 +1,5 @@
|
||||
#
|
||||
# spec file for package glibc (Version 2.11.2)
|
||||
# spec file for package glibc (Version 2.11.3)
|
||||
#
|
||||
# Copyright (c) 2010 SUSE LINUX Products GmbH, Nuernberg, Germany.
|
||||
#
|
||||
@ -63,12 +63,12 @@ Obsoletes: glibc-32bit
|
||||
%endif
|
||||
Provides: rtld(GNU_HASH)
|
||||
AutoReqProv: on
|
||||
Version: 2.11.2
|
||||
Version: 2.11.3
|
||||
Release: 3
|
||||
Url: http://www.gnu.org/software/libc/libc.html
|
||||
PreReq: filesystem
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
Source: glibc-%{version}-dd2fde461e30.tar.bz2
|
||||
Source: glibc-%{version}.tar.bz2
|
||||
Source2: glibc-ports-2.10.1-2b2b217196.tar.bz2
|
||||
Source3: noversion.tar.bz2
|
||||
Source4: manpages.tar.bz2
|
||||
@ -126,7 +126,6 @@ Patch41: glibc-check-native-missing-include.diff
|
||||
Patch42: glibc-no-unwind-tables.diff
|
||||
Patch43: glibc-2.10-nscd-nostack.diff
|
||||
Patch44: glibc-cpusetsize.diff
|
||||
Patch45: glibc-nis-splitgroups.diff
|
||||
Patch46: glibc-2.10.99-ia64-include.diff
|
||||
Patch47: libm-x86-64-exceptions.diff
|
||||
Patch48: glibc-uio-cell.diff
|
||||
@ -135,8 +134,6 @@ Patch60: ld-prelink-unique.diff
|
||||
Patch61: glibc-ppc64-vdso-time.diff
|
||||
Patch64: glibc-gai-private4.diff
|
||||
Patch65: glibc-resolv-mdnshint.diff
|
||||
Patch66: glibc-ldconfigr-aux.diff
|
||||
Patch67: glibc-nis-initgroups.diff
|
||||
Patch69: glibc-nscd-hconf.diff
|
||||
Patch500: ARM_glibc-2.10.1-local-eabi-wchar.diff
|
||||
Patch501: ARM_glibc-2.10.1-local-hwcap-updates.diff
|
||||
@ -349,7 +346,6 @@ rm nscd/s-stamp
|
||||
%patch42
|
||||
%patch43
|
||||
%patch44
|
||||
%patch45
|
||||
%patch46
|
||||
%patch47
|
||||
%patch48 -p1
|
||||
@ -358,8 +354,6 @@ rm nscd/s-stamp
|
||||
%patch61 -p1
|
||||
%patch64
|
||||
%patch65 -p1
|
||||
%patch66 -p1
|
||||
%patch67 -p1
|
||||
%patch69 -p1
|
||||
%ifarch %arm armv5tel armv7l
|
||||
%patch500
|
||||
|
Loading…
Reference in New Issue
Block a user