From b9054b1999069468d515e56f80a4692cd6a00a287cd9f6ff226c0f65474c914e Mon Sep 17 00:00:00 2001 From: OBS User autobuild Date: Mon, 19 Jul 2010 11:13:32 +0000 Subject: [PATCH] Accepting request 43275 from Base:System Copy from Base:System/glibc based on submit request 43275 from user dirkmueller OBS-URL: https://build.opensuse.org/request/show/43275 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/glibc?expand=0&rev=24 --- glibc-nis-initgroups.diff | 39 +++++++++++++++++++++++++++++++++++++++ glibc-sparc64-fxstat.diff | 7 +++++++ glibc.changes | 16 ++++++++++++++++ glibc.spec | 9 +++++++-- 4 files changed, 69 insertions(+), 2 deletions(-) create mode 100644 glibc-nis-initgroups.diff create mode 100644 glibc-sparc64-fxstat.diff diff --git a/glibc-nis-initgroups.diff b/glibc-nis-initgroups.diff new file mode 100644 index 0000000..59ac9c5 --- /dev/null +++ b/glibc-nis-initgroups.diff @@ -0,0 +1,39 @@ +2010-05-31 Petr Baudis + + * 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); + } diff --git a/glibc-sparc64-fxstat.diff b/glibc-sparc64-fxstat.diff new file mode 100644 index 0000000..fa06e5a --- /dev/null +++ b/glibc-sparc64-fxstat.diff @@ -0,0 +1,7 @@ +Index: glibc-2.10.1/sysdeps/unix/sysv/linux/sparc/sparc64/fxstat.c +=================================================================== +--- glibc-2.10.1.orig/sysdeps/unix/sysv/linux/sparc/sparc64/fxstat.c ++++ glibc-2.10.1/sysdeps/unix/sysv/linux/sparc/sparc64/fxstat.c +@@ -1 +1 @@ +-#include "../../fxstat.c" ++#include "../../i386/fxstat.c" diff --git a/glibc.changes b/glibc.changes index 2f00e0c..89c01c0 100644 --- a/glibc.changes +++ b/glibc.changes @@ -1,3 +1,19 @@ +------------------------------------------------------------------- +Wed Jul 7 04:12:05 CEST 2010 - pbaudis@suse.cz + +- Fix NIS-compat initgroups routine to work reliably over multiple + invocations [bnc#607064] + +------------------------------------------------------------------- +Thu Jul 1 19:52:56 UTC 2010 - jengelh@medozas.de + +- SPARC: restore fxstat functionality in sparc64 mode + +------------------------------------------------------------------- +Sat Jun 26 10:26:17 UTC 2010 - jengelh@medozas.de + +- Use %_smp_mflags + ------------------------------------------------------------------- Fri Jun 11 15:41:07 CEST 2010 - pbaudis@suse.cz diff --git a/glibc.spec b/glibc.spec index f1a5f5c..a50ed77 100644 --- a/glibc.spec +++ b/glibc.spec @@ -64,7 +64,7 @@ Obsoletes: glibc-32bit Provides: rtld(GNU_HASH) AutoReqProv: on Version: 2.11.2 -Release: 2 +Release: 3 Url: http://www.gnu.org/software/libc/libc.html PreReq: filesystem BuildRoot: %{_tmppath}/%{name}-%{version}-build @@ -137,10 +137,13 @@ 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 Patch500: ARM_glibc-2.10.1-local-eabi-wchar.diff Patch501: ARM_glibc-2.10.1-local-hwcap-updates.diff Patch502: ARM_glibc-2.10.1-local-lowlevellock.diff Patch503: ARM_glibc-2.10.1-local-no-hwcap.diff +# http://sources.redhat.com/bugzilla/show_bug.cgi?id=11155 +Patch600: glibc-sparc64-fxstat.diff %description The GNU C Library provides the most important standard libraries used @@ -357,12 +360,14 @@ rm nscd/s-stamp %patch64 %patch65 -p1 %patch66 -p1 +%patch67 -p1 %ifarch %arm armv5tel armv7l %patch500 %patch501 %patch502 %patch503 %endif +%patch600 -p1 # # Inconsistency detected by ld.so: dl-close.c: 719: _dl_close: Assertion `map->l_init_called' failed! # @@ -409,7 +414,7 @@ BuildFlags="$(echo $BuildFlags | sed -e 's#-fstack-protector##' -e 's#-ffortify= BuildCC="gcc" BuildCCplus="g++" add_ons=",libidn" -PARALLEL="%{?jobs:-j%jobs}" +PARALLEL="%{?_smp_mflags}" # #now overwrite for some architectures #