Hello community,
here is the log from the commit of package glibc for openSUSE:Factory
checked in at Thu Aug 18 16:00:25 CEST 2011.
--------
--- glibc/glibc.changes 2011-07-21 15:06:24.000000000 +0200
+++ /mounts/work_src_done/STABLE/glibc/glibc.changes 2011-08-18 14:04:54.000000000 +0200
@@ -1,0 +2,36 @@
+Thu Aug 18 11:55:08 UTC 2011 - aj@suse.de
+
+- Mark glibc-info, glibc-html and glibc-i18ndata as noarch packages.
+
+-------------------------------------------------------------------
+Wed Aug 17 18:57:00 UTC 2011 - matz@suse.de
+
+- Fix crash (access-after-free) in dl_lookup_x. [bnc#703140]
+
+-------------------------------------------------------------------
+Wed Aug 17 18:56:03 UTC 2011 - aj@suse.de
+
+- Enhance rpmlintrc to ignore shlib policy violation.
+- Remove obsolete patches glibc-fnmatch-multibyte.diff,
+ glibc-2.3.1.localedef.diff, glibc-2.10-nscd-nostack.diff.
+
+-------------------------------------------------------------------
+Wed Aug 17 14:47:11 UTC 2011 - aj@suse.de
+
+- Update to current 2.14 branch: Various bugfixes.
+ Remove upstreamed patches missing-include-build-fix.diff,
+ glibc-2.14-res_send.patch, glibc-dl-fxstatat64.patch)
+
+-------------------------------------------------------------------
+Wed Aug 17 14:09:50 UTC 2011 - aj@suse.de
+
+- Revert removal of sunrpc code (patch glibc2.14-revert-sunrpc-removal.patch).
+
+-------------------------------------------------------------------
+Fri Aug 12 14:55:12 CEST 2011 - matz@suse.de
+
+- Revert seeking on fclose, incomplete implementation of POSIX
+ behaviour can confuse current users. [bnc #711829]
+ (patch glibc-revert-fseek-on-fclose.diff)
+
+-------------------------------------------------------------------
@@ -5,0 +42 @@
+ (patch glibc-fix-double-loopback.diff)
@@ -23,0 +61,16 @@
+
+-------------------------------------------------------------------
+Fri Jul 15 07:54:46 UTC 2011 - aj@suse.de
+
+- Update to glibc 2.14:
+ * The RPC implementation in libc is obsoleted. Old programs keep working
+ but new programs cannot be linked with the routines in libc anymore.
+ Programs in need of RPC functionality must be linked against TI-RPC.
+ The TI-RPC implementation is IPv6 enabled and there are other benefits.
+ * Various bugfixes, new locales, new linux kernel interfaces.
+ * New program sotruss to traces calls through PLTs
+ * Removed the following obsoleted patches: glibc-2.6-configure.diff,
+ glibc-disable-backward-memcpy.diff, glibc-static-memcpy.diff,
+ glibc-zarch-longlong.diff, glibc-bso-12454.diff,
+ glibc-vfprintf-positional.diff
+- Build without -fno-strict-aliasing.
calling whatdependson for head-i586
Old:
----
glibc-2.10-nscd-nostack.diff
glibc-2.13-996cf2ef0727.tar.bz2
glibc-2.13-dl-load.patch
glibc-2.3.1.localedef.diff
glibc-2.6-configure.diff
glibc-bso-12454.diff
glibc-disable-backward-memcpy.diff
glibc-fnmatch-multibyte.diff
glibc-ports-2.13.tar.bz2
glibc-static-memcpy.diff
glibc-vfprintf-positional.diff
glibc-zarch-longlong.diff
minmem
missing-include-build-fix.diff
New:
----
glibc-2.14-4eddf93f5cc2.tar.bz2
glibc-fix-lookup-crash.patch
glibc-ports-2.14.tar.bz2
glibc-revert-fseek-on-fclose.diff
glibc2.14-revert-sunrpc-removal.patch
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ glibc.spec ++++++
--- /var/tmp/diff_new_pack.WliARr/_old 2011-08-18 15:59:45.000000000 +0200
+++ /var/tmp/diff_new_pack.WliARr/_new 2011-08-18 15:59:45.000000000 +0200
@@ -77,11 +77,13 @@
%ifarch ppc
Obsoletes: glibc-32bit
%endif
-Version: 2.13
-Release: 29
+AutoReqProv: on
+Version: 2.14
+Release: 1
Url: http://www.gnu.org/software/libc/libc.html
-Source: glibc-%{version}-996cf2ef0727.tar.bz2
-Source2: http://ftp.gnu.org/gnu/glibc/glibc-ports-2.13.tar.bz2
+BuildRoot: %{_tmppath}/%{name}-%{version}-build
+Source: glibc-%{version}-4eddf93f5cc2.tar.bz2
+Source2: http://ftp.gnu.org/gnu/glibc/glibc-ports-2.14.tar.bz2
Source3: noversion.tar.bz2
Source4: manpages.tar.bz2
Source5: usr.sbin.nscd
@@ -112,8 +114,6 @@
Patch0: glibc-testsuite.patch
# PATCH-FIX-OPENSUSE handle glibc binaries
Patch1: glibc-2.3.90-noversion.diff
-# PATCH-MISSING-TAG -- See http://en.opensuse.org/openSUSE:Packaging_Patches_guidelines
-Patch2: glibc-fnmatch-multibyte.diff
# PATCH-FIX-OPENSUSE reload /etc/resolv.conf on change
Patch3: glibc-resolv-reload.diff
# PATCH-MISSING-TAG -- See http://en.opensuse.org/openSUSE:Packaging_Patches_guidelines
@@ -125,8 +125,6 @@
# PATCH-MISSING-TAG -- See http://en.opensuse.org/openSUSE:Packaging_Patches_guidelines
Patch8: glibc-2.4.90-revert-only-euro.diff
# PATCH-MISSING-TAG -- See http://en.opensuse.org/openSUSE:Packaging_Patches_guidelines
-Patch11: glibc-2.3.1.localedef.diff
-# PATCH-MISSING-TAG -- See http://en.opensuse.org/openSUSE:Packaging_Patches_guidelines
Patch12: glibc-2.3.2.no_archive.diff
# PATCH-MISSING-TAG -- See http://en.opensuse.org/openSUSE:Packaging_Patches_guidelines
Patch13: libm-x86-64.diff.bz2
@@ -148,8 +146,6 @@
Patch24: glibc-2.3.5-nscd-zeronegtimeout.diff
# PATCH-FIX-OPENSUSE prefer -lang rpm packages
Patch25: glibc-2.3.90-langpackdir.diff
-# PATCH-MISSING-TAG -- See http://en.opensuse.org/openSUSE:Packaging_Patches_guidelines
-Patch27: glibc-2.6-configure.diff
# PATCH-FIX-OPENSUSE Fix hangs in UDP RPC calls bso#5379 bnc#257745 aj@suse.de
Patch28: glibc-2.2-sunrpc.diff
# PATCH-FIX-OPENSUSE Do not generate hardlink for getconf
@@ -160,16 +156,12 @@
Patch33: glibc-compiled-binaries.diff
# PATCH-MISSING-TAG -- See http://en.opensuse.org/openSUSE:Packaging_Patches_guidelines
Patch36: glibc-no-unwind-tables.diff
-# PATCH-FIX-OPENSUSE bnc#387202
-Patch37: glibc-2.10-nscd-nostack.diff
# PATCH-FEATURE-SLE increase cpusetsize to 4096, needs to be kept for compatibility kukuk@suse.de
Patch38: glibc-cpusetsize.diff
# PATCH-MISSING-TAG -- See http://en.opensuse.org/openSUSE:Packaging_Patches_guidelines
Patch40: libm-x86-64-exceptions.diff
# PATCH-FIX-OPENSUSE - Allow compilation with -altivec aj@suse.de
Patch41: glibc-uio-cell.diff
-# PATCH-FIX-UPSTREAM -- add missing includes aj@suse.de
-Patch43: missing-include-build-fix.diff
# PATCH-MISSING-TAG -- See http://en.opensuse.org/openSUSE:Packaging_Patches_guidelines
Patch45: glibc-gai-private4.diff
# PATCH-MISSING-TAG -- See http://en.opensuse.org/openSUSE:Packaging_Patches_guidelines
@@ -182,22 +174,10 @@
Patch49: glibc-fini-unwind.diff
# PATCH-FIX-UPSTREAM install gconv-modules aj@suse.de
Patch50: glibc-gconvcache-s390.diff
-# PATCH-FIX-UPSTREAM - Fix alloca argument bso#12445 aj@suse.de
-Patch51: glibc-vfprintf-positional.diff
# PATCH-FIX-OPENSUSE bnc#657627
Patch52: glibc-elf-localscope.diff
-# PATCH-FIX-UPSTREAM Fix longlong.h for zArch
-Patch53: glibc-zarch-longlong.diff
-# PATCH-FEATURE-OPENSUSE disable backward memcpy aj@suse.de
-Patch54: glibc-disable-backward-memcpy.diff
-# PATCH-MISSING-TAG -- See http://en.opensuse.org/openSUSE:Packaging_Patches_guidelines
-Patch55: glibc-bso-12454.diff
-# PATCH-FIX-UPSTREAM fix static memcpy
-Patch56: glibc-static-memcpy.diff
# FIX-OPENSUSE compile some files with -fno-strict-aliasing
Patch58: glibc-strict-aliasing.diff
-# PATCH-FIX-UPSTREAM fix preloading of shared libs aj@suse.de
-Patch59: glibc-2.13-dl-load.patch
# PATCH-FIX-UPSTREAM fix x86 aj@suse.de
Patch60: glibc-x86-bits-sigcontext.patch
# PATCH-FEATURE-UPSTREAM Speedup getsysstats call aj@suse.de
@@ -210,7 +190,12 @@
Patch64: glibc-fix-rwlock-stack-imbalance.patch
# PATCH-FIX-OPENSUSE disable rewriting ::1 to 127.0.0.1 for /etc/hosts bnc#684534, bnc#706719
Patch65: glibc-fix-double-loopback.diff
-#
+# PATCH-FEATURE-OPENSUSE Revert sunrpc removal aj@suse.de
+Patch66: glibc2.14-revert-sunrpc-removal.patch
+# PATCH-FIX-OPENSUSE revert seeking on fclose for now bnc#711829 matz@suse.de
+Patch67: glibc-revert-fseek-on-fclose.diff
+# PATCH-FIX-OPENSUSE Fix crash (access-after-free) in dl_lookup_x bnc#703140 matz@suse.de
+Patch68: glibc-fix-lookup-crash.patch
# PATCH-FEATURE-OPENSUSE -- add sha support to crypt_blowfish lnussel@suse.de
Patch80: crypt_blowfish-1.1-sha.diff
@@ -226,6 +211,7 @@
Group: Documentation/Other
Requires(post): %{install_info_prereq}
Requires(postun): %{install_info_prereq}
+BuildArch: noarch
%description info
This package contains the documentation for the GNU C library stored as
@@ -236,6 +222,7 @@
License: GPLv2+ ; LGPLv2.1+
Summary: HTML Documentation for the GNU C Library
Group: Documentation/HTML
+BuildArch: noarch
%description html
This package contains the HTML documentation for the GNU C library. Due
@@ -246,6 +233,7 @@
License: LGPLv2.1+
Summary: Database Sources for 'locale'
Group: System/Libraries
+BuildArch: noarch
%description i18ndata
This package contains the data needed to build the locale data files to
@@ -387,15 +375,11 @@
%patch0
# libNoVersion part is only active on ix86
%patch1
-# Disabled
-# %patch2 -p1
%patch3
%patch4
%patch5 -p1
%patch7
%patch8
-# Disabled
-#%patch11
%patch12
%patch13 -E
# We have s_sincos.c in patch13, remove duplicate
@@ -404,7 +388,8 @@
%patch16
%patch18
%patch20
-%patch21
+# XXX Did not patch for 2.14:
+#%patch21
# avoid changing nscd_stat.c mtime to avoid code generation
# differences on each rebuild
touch -r nscd/nscd_stat.c nscd/s-stamp
@@ -414,18 +399,14 @@
touch -r nscd/s-stamp nscd/nscd_stat.c
rm nscd/s-stamp
%patch25
-%patch27
%patch28
%patch29
%patch30
%patch33
%patch36
-# Disable for now
-#%patch37
%patch38
%patch40
%patch41 -p1
-%patch43 -p1
%patch45
%patch46 -p1
%patch47 -p1
@@ -434,20 +415,17 @@
%endif
%patch49
%patch50
-%patch51 -p1
%patch52
-%patch53 -p1
-%patch54 -p1
-%patch55 -p1
-%patch56 -p1
%patch58
-%patch59 -p1
%patch60 -p1
%patch61 -p1
%patch62 -p1
%patch63 -p1
%patch64 -p1
%patch65 -p1
+%patch66 -p1
+%patch67 -p1
+%patch68 -p1
#
# Inconsistency detected by ld.so: dl-close.c: 719: _dl_close: Assertion `map->l_init_called' failed!
@@ -917,7 +895,6 @@
%doc %{_mandir}/man1/getent.1.gz
%doc %{_mandir}/man1/localedef.1.gz
%doc %{_mandir}/man5/*
-%doc %{_mandir}/man8/rpcinfo.8.gz
/%{_lib}/ld-%{version}.so
%ifarch ppc s390 mips hppa
/%{_lib}/ld.so.1
@@ -1025,7 +1002,6 @@
%dir %attr(0755,root,root) %{_libdir}/getconf
%{_libdir}/getconf/*
%{_sbindir}/glibc_post_upgrade
-%{_sbindir}/rpcinfo
%{_sbindir}/iconvconfig
%ifarch %ix86
@@ -1138,11 +1114,14 @@
%defattr(-,root,root)
/%{_lib}/libmemusage.so
/%{_lib}/libpcprofile.so
+%dir /%{_libdir}/audit
+/%{_libdir}/audit/sotruss-lib.so
# These need gd-devel for building
# %%{_bindir}/memusage
# %%{_bindir}/memusagestat
%{_bindir}/mtrace
%{_bindir}/pcprofiledump
+%{_bindir}/sotruss
%{_bindir}/xtrace
%changelog
++++++ getaddrinfo-ipv6-sanity.diff ++++++
--- /var/tmp/diff_new_pack.WliARr/_old 2011-08-18 15:59:45.000000000 +0200
+++ /var/tmp/diff_new_pack.WliARr/_new 2011-08-18 15:59:45.000000000 +0200
@@ -13,16 +13,7 @@
{
const struct gaih_typeproto *tp = gaih_inet_typeproto;
struct gaih_servtuple *st = (struct gaih_servtuple *) &nullserv;
-@@ -706,7 +706,7 @@ gaih_inet (const char *name, const struc
- no_data = 0;
- nss_gethostbyname4_r fct4
- = __nss_lookup_function (nip, "gethostbyname4_r");
-- if (fct4 != NULL)
-+ if (fct4 != NULL && usable_ipv6)
- {
- int herrno;
-
-@@ -763,7 +763,7 @@ gaih_inet (const char *name, const struc
+@@ -766,7 +766,7 @@ gaih_inet (const char *name, const struc
if (fct != NULL)
{
if (req->ai_family == AF_INET6
@@ -31,7 +22,7 @@
{
gethosts (AF_INET6, struct in6_addr);
no_inet6_data = no_data;
-@@ -2156,7 +2156,7 @@ getaddrinfo (const char *name, const cha
+@@ -2157,7 +2157,7 @@ getaddrinfo (const char *name, const cha
if (hints->ai_family == AF_UNSPEC || hints->ai_family == AF_INET
|| hints->ai_family == AF_INET6)
{
++++++ glibc-2.13-996cf2ef0727.tar.bz2 -> glibc-2.14-4eddf93f5cc2.tar.bz2 ++++++
glibc/glibc-2.13-996cf2ef0727.tar.bz2 /mounts/work_src_done/STABLE/glibc/glibc-2.14-4eddf93f5cc2.tar.bz2 differ: char 11, line 1
++++++ glibc-2.2-sunrpc.diff ++++++
--- /var/tmp/diff_new_pack.WliARr/_old 2011-08-18 15:59:45.000000000 +0200
+++ /var/tmp/diff_new_pack.WliARr/_new 2011-08-18 15:59:45.000000000 +0200
@@ -1,6 +1,7 @@
For details see:
http://sourceware.org/bugzilla/show_bug.cgi?id=5379
+
Index: sunrpc/clnt_udp.c
===================================================================
--- sunrpc/clnt_udp.c.orig
++++++ glibc-2.4.90-nscd.diff ++++++
--- /var/tmp/diff_new_pack.WliARr/_old 2011-08-18 15:59:45.000000000 +0200
+++ /var/tmp/diff_new_pack.WliARr/_new 2011-08-18 15:59:45.000000000 +0200
@@ -2,7 +2,7 @@
===================================================================
--- nscd/cache.c.orig 2010-01-18 18:01:41.000000000 +0100
+++ nscd/cache.c 2010-02-14 14:58:08.000000000 +0100
-@@ -267,28 +267,31 @@ prune_cache (struct database_dyn *table,
+@@ -267,27 +267,29 @@
if (table->inotify_descr < 0 && table->check_file && now != LONG_MAX)
{
struct stat64 st;
@@ -14,7 +14,7 @@
{
- char buf[128];
- /* We cannot stat() the file, disable file checking if the
-- file does not exist. */
+- file does not exist. */
- dbg_log (_("cannot stat() file `%s': %s"),
- table->filename, strerror_r (errno, buf, sizeof (buf)));
- if (errno == ENOENT)
@@ -37,14 +37,12 @@
}
}
}
-
+ /* now == 0 means just check for changed files */
+ if (now == (time_t)0)
+ return 0;
-+
+
/* We run through the table and find values which are not valid anymore.
- Note that for the initial step, finding the entries to be removed,
Index: nscd/connections.c
===================================================================
--- nscd/connections.c.orig 2010-01-18 18:01:41.000000000 +0100
++++++ glibc-cpusetsize.diff ++++++
--- /var/tmp/diff_new_pack.WliARr/_old 2011-08-18 15:59:45.000000000 +0200
+++ /var/tmp/diff_new_pack.WliARr/_new 2011-08-18 15:59:45.000000000 +0200
@@ -2,7 +2,7 @@
===================================================================
--- bits/sched.h.orig
+++ bits/sched.h
-@@ -38,7 +38,7 @@ struct sched_param
+@@ -54,7 +54,7 @@ struct __sched_param
#if defined _SCHED_H && !defined __cpu_set_t_defined
# define __cpu_set_t_defined
/* Size definition for CPU sets. */
@@ -10,12 +10,12 @@
+# define __CPU_SETSIZE 4096
# define __NCPUBITS (8 * sizeof (__cpu_mask))
- /* Type for array elements in 'cpu_set'. */
+ /* Type for array elements in 'cpu_set_t'. */
Index: sysdeps/unix/sysv/linux/bits/sched.h
===================================================================
--- sysdeps/unix/sysv/linux/bits/sched.h.orig
+++ sysdeps/unix/sysv/linux/bits/sched.h
-@@ -106,7 +106,7 @@ struct __sched_param
+@@ -113,7 +113,7 @@ struct __sched_param
#if defined _SCHED_H && !defined __cpu_set_t_defined
# define __cpu_set_t_defined
/* Size definition for CPU sets. */
++++++ glibc-fix-lookup-crash.patch ++++++
Index: glibc-2.11.3/elf/dl-close.c
===================================================================
--- glibc-2.11.3.orig/elf/dl-close.c 2011-05-27 15:08:23.000000000 +0200
+++ glibc-2.11.3/elf/dl-close.c 2011-07-13 19:28:52.000000000 +0200
@@ -127,7 +127,13 @@ _dl_close_worker (struct link_map *map)
{
struct link_map **oldp = map->l_initfini;
map->l_initfini = map->l_orig_initfini;
- _dl_scope_free (oldp);
+ /* We can't remove the l_initfini memory because
+ it's shared with l_searchlist.r_list. We don't clear
+ the latter so when we dlopen this object again that
+ entry would point to stale memory. And we don't want
+ to recompute it as it would involve a new call to
+ map_object_deps.
+ _dl_scope_free (oldp); */
}
}
++++++ glibc-ports-2.13.tar.bz2 -> glibc-ports-2.14.tar.bz2 ++++++
++++ 3306 lines of diff (skipped)
++++++ glibc-revert-fseek-on-fclose.diff ++++++
This reverts the following patch from upstream PR 12724,
which can cause surprising changes in fclose behaviour when multiple
file handles refer to the same file (fclose on one changes file position
on the other).
See bnc #711829.
git diff -R 'fcabc0f8b185f9e0a9289720be5ede6c39b3bf21^!'
2011-05-13 Ulrich Drepper
[BZ #12724]
* libio/fileops.c (_IO_new_file_close_it): Always flush when
currently writing and seek to current position when not.
* libio/Makefile (tests): Add bug-fclose1.
* libio/bug-fclose1.c: New file.
2011-05-12 Ulrich Drepper
[BZ #12511]
diff --git b/libio/Makefile a/libio/Makefile
index ec30904..83b9458 100644
--- b/libio/Makefile
+++ a/libio/Makefile
@@ -1,4 +1,4 @@
-# Copyright (C) 1995-2004,2006-2009,2011 Free Software Foundation, Inc.
+# Copyright (C) 1995-2004,2006,2007,2008,2009 Free Software Foundation, Inc.
# This file is part of the GNU C Library.
# The GNU C Library is free software; you can redistribute it and/or
@@ -58,7 +58,7 @@ tests = tst_swprintf tst_wprintf tst_swscanf tst_wscanf tst_getwc tst_putwc \
tst-memstream1 tst-memstream2 \
tst-wmemstream1 tst-wmemstream2 \
bug-memstream1 bug-wmemstream1 \
- tst-setvbuf1 tst-popen1 tst-fgetwc bug-wsetpos bug-fclose1
+ tst-setvbuf1 tst-popen1 tst-fgetwc bug-wsetpos
test-srcs = test-freopen
all: # Make this the default target; it will be defined in Rules.
diff --git b/libio/bug-fclose1.c a/libio/bug-fclose1.c
deleted file mode 100644
index f1e09f5..0000000
--- b/libio/bug-fclose1.c
+++ /dev/null
@@ -1,132 +0,0 @@
-// BZ #12724
-
-static void do_prepare (void);
-#define PREPARE(argc, argv) do_prepare ()
-static int do_test (void);
-#define TEST_FUNCTION do_test()
-#include "../test-skeleton.c"
-
-
-static int fd;
-
-
-static void
-do_prepare (void)
-{
- fd = create_temp_file ("bug-fclose1.", NULL);
- if (fd == -1)
- {
- printf ("cannot create temporary file: %m\n");
- exit (1);
- }
-}
-
-
-static int
-do_test (void)
-{
- static const char pattern[] = "hello world";
-
- /* Prepare a seekable file. */
- if (write (fd, pattern, sizeof pattern) != sizeof pattern)
- {
- printf ("cannot write pattern: %m\n");
- return 1;
- }
- if (lseek (fd, 1, SEEK_SET) != 1)
- {
- printf ("cannot seek after write: %m\n");
- return 1;
- }
-
- /* Create an output stream visiting the file; when it is closed, all
- other file descriptors visiting the file must see the new file
- position. */
- int fd2 = dup (fd);
- if (fd2 < 0)
- {
- printf ("cannot duplicate descriptor for writing: %m\n");
- return 1;
- }
- FILE *f = fdopen (fd2, "w");
- if (f == NULL)
- {
- printf ("first fdopen failed: %m\n");
- return 1;
- }
- if (fputc (pattern[1], f) != pattern[1])
- {
- printf ("fputc failed: %m\n");
- return 1;
- }
- if (fclose (f) != 0)
- {
- printf ("first fclose failed: %m\n");
- return 1;
- }
- errno = 0;
- if (lseek (fd2, 0, SEEK_CUR) != -1)
- {
- printf ("lseek after fclose after write did not fail\n");
- return 1;
- }
- if (errno != EBADF)
- {
- printf ("lseek after fclose after write did not fail with EBADF: %m\n");
- return 1;
- }
- off_t o = lseek (fd, 0, SEEK_CUR);
- if (o != 2)
- {
- printf ("\
-lseek on original descriptor after first fclose returned %ld, expected 2\n",
- (long int) o);
- return 1;
- }
-
- /* Likewise for an input stream. */
- fd2 = dup (fd);
- if (fd2 < 0)
- {
- printf ("cannot duplicate descriptor for reading: %m\n");
- return 1;
- }
- f = fdopen (fd2, "r");
- if (f == NULL)
- {
- printf ("second fdopen failed: %m\n");
- return 1;
- }
- char c = fgetc (f);
- if (c != pattern[2])
- {
- printf ("getc returned %c, expected %c\n", c, pattern[2]);
- return 1;
- }
- if (fclose (f) != 0)
- {
- printf ("second fclose failed: %m\n");
- return 1;
- }
- errno = 0;
- if (lseek (fd2, 0, SEEK_CUR) != -1)
- {
- printf ("lseek after fclose after read did not fail\n");
- return 1;
- }
- if (errno != EBADF)
- {
- printf ("lseek after fclose after read did not fail with EBADF: %m\n");
- return 1;
- }
- o = lseek (fd, 0, SEEK_CUR);
- if (o != 3)
- {
- printf ("\
-lseek on original descriptor after second fclose returned %ld, expected 3\n",
- (long int) o);
- return 1;
- }
-
- return 0;
-}
Index: glibc-2.14/libio/fileops.c
===================================================================
--- glibc-2.14.orig/libio/fileops.c
+++ glibc-2.14/libio/fileops.c
@@ -160,28 +160,20 @@ int
_IO_new_file_close_it (fp)
_IO_FILE *fp;
{
+ int write_status;
if (!_IO_file_is_open (fp))
return EOF;
- int write_status;
- if (_IO_in_put_mode (fp))
+ if ((fp->_flags & _IO_NO_WRITES) == 0
+ && (fp->_flags & _IO_CURRENTLY_PUTTING) != 0)
write_status = _IO_do_flush (fp);
- else if (fp->_offset != _IO_pos_BAD && fp->_IO_read_base != NULL
- && !_IO_in_backup (fp))
- {
- off64_t o = _IO_SEEKOFF (fp, 0, _IO_seek_cur, 0);
- if (o == WEOF)
- write_status = EOF;
- else
- write_status = _IO_SYSSEEK (fp, o, SEEK_SET) < 0 ? EOF : 0;
- }
else
write_status = 0;
INTUSE(_IO_unsave_markers) (fp);
int close_status = ((fp->_flags2 & _IO_FLAGS2_NOCLOSE) == 0
? _IO_SYSCLOSE (fp) : 0);
/* Free buffer. */
#if defined _LIBC || defined _GLIBCPP_USE_WCHAR_T
++++++ glibc-strict-aliasing.diff ++++++
--- /var/tmp/diff_new_pack.WliARr/_old 2011-08-18 15:59:46.000000000 +0200
+++ /var/tmp/diff_new_pack.WliARr/_new 2011-08-18 15:59:46.000000000 +0200
@@ -62,9 +62,9 @@
+cflags += -Wno-strict-prototypes -Wno-write-strings
Index: sunrpc/Makefile
===================================================================
---- sunrpc/Makefile.orig 2011-05-25 20:00:57.381005790 +0200
-+++ sunrpc/Makefile 2011-06-15 14:57:37.657361569 +0200
-@@ -129,6 +129,10 @@
+--- sunrpc/Makefile.orig
++++ sunrpc/Makefile
+@@ -152,6 +152,10 @@ CFLAGS-openchild.c = -fexceptions
CPPFLAGS += -D_RPC_THREAD_SAFE_
@@ -72,10 +72,9 @@
+CFLAGS-clnt_udp.c = -fno-strict-aliasing
+CFLAGS-clnt_unix.c = -fno-strict-aliasing
+
- include ../Rules
-
- $(objpfx)rpcgen: $(addprefix $(objpfx),$(rpcgen-objs)) \
-
+ $(objpfx)tst-getmyaddr: $(common-objpfx)linkobj/libc.so
+ $(objpfx)tst-xdrmem: $(common-objpfx)linkobj/libc.so
+ $(objpfx)tst-xdrmem2: $(common-objpfx)linkobj/libc.so
Index: sysdeps/powerpc/powerpc64/elf/Makefile
===================================================================
--- sysdeps/powerpc/powerpc64/elf/Makefile.orig
++++++ glibc.rpmlintrc ++++++
--- /var/tmp/diff_new_pack.WliARr/_old 2011-08-18 15:59:46.000000000 +0200
+++ /var/tmp/diff_new_pack.WliARr/_new 2011-08-18 15:59:46.000000000 +0200
@@ -12,3 +12,5 @@
addFilter(".*permissions-missing-postin missing %set_permissions /usr/.*pt_chown in %post")
# Do not require permissions, this will lead to a cycle (bnc#700925):
addFilter("glibc\..*: permissions-missing-requires")
+# We will not rename glibc to follow the shlib policy
+addFilter("shlib-policy-missing-suffix")
++++++ glibc2.14-revert-sunrpc-removal.patch ++++++
Index: glibc-2.14/nis/Makefile
===================================================================
--- glibc-2.14.orig/nis/Makefile
+++ glibc-2.14/nis/Makefile
@@ -23,9 +23,9 @@ subdir := nis
aux := nis_hash
+headers := $(wildcard rpcsvc/*.[hx])
distribute := nss-nis.h nss-nisplus.h nis_intern.h Banner \
- nisplus-parser.h nis_xdr.h nss \
- $(wildcard rpcsvc/*.[hx])
+ nisplus-parser.h nis_xdr.h nss
# These are the databases available for the nis (and perhaps later nisplus)
# service. This must be a superset of the services in nss.
Index: glibc-2.14/NEWS
===================================================================
--- glibc-2.14.orig/NEWS
+++ glibc-2.14/NEWS
@@ -20,16 +20,6 @@ Version 2.14
12724, 12734, 12738, 12746, 12766, 12775, 12777, 12782, 12788, 12792,
12795, 12811, 12813, 12814, 12841
-* The RPC implementation in libc is obsoleted. Old programs keep working
- but new programs cannot be linked with the routines in libc anymore.
- Programs in need of RPC functionality must be linked against TI-RPC.
- The TI-RPC implementation is IPv6 enabled and there are other benefits.
-
- Visible changes of this change include (obviously) the inability to link
- programs using RPC functions without referencing the TI-RPC library and the
- removal of the RPC headers from the glibc headers.
- Implemented by Ulrich Drepper.
-
* New Linux interfaces: clock_adjtime, name_to_handle_at, open_by_handle_at,
syncfs, setns, sendmmsg
Index: glibc-2.14/include/libc-symbols.h
===================================================================
--- glibc-2.14.orig/include/libc-symbols.h
+++ glibc-2.14/include/libc-symbols.h
@@ -635,7 +635,7 @@ for linking")
# define libc_hidden_proto(name, attrs...) hidden_proto (name, ##attrs)
# define libc_hidden_def(name) hidden_def (name)
# define libc_hidden_weak(name) hidden_weak (name)
-# define libc_hidden_nolink(name, version) hidden_nolink (name, libc, version)
+# define libc_hidden_nolink(name, version) hidden_def (name)
# define libc_hidden_ver(local, name) hidden_ver (local, name)
# define libc_hidden_data_def(name) hidden_data_def (name)
# define libc_hidden_data_weak(name) hidden_data_weak (name)
Index: glibc-2.14/sunrpc/Makefile
===================================================================
--- glibc-2.14.orig/sunrpc/Makefile
+++ glibc-2.14/sunrpc/Makefile
@@ -53,7 +53,7 @@ headers-in-tirpc = $(addprefix rpc/,auth
des_crypt.h)
headers-not-in-tirpc = $(addprefix rpc/,key_prot.h rpc_des.h) \
$(rpcsvc:%=rpcsvc/%) rpcsvc/bootparam.h
-headers = rpc/netdb.h
+headers = rpc/netdb.h $(headers-in-tirpc) $(headers-not-in-tirpc)
install-others = $(inst_sysconfdir)/rpc
generated = $(rpcsvc:%.x=rpcsvc/%.h) $(rpcsvc:%.x=x%.c) $(rpcsvc:%.x=x%.stmp) \
$(rpcsvc:%.x=rpcsvc/%.stmp) rpcgen
++++++ manpages.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/manpages/Makefile new/manpages/Makefile
--- old/manpages/Makefile 2005-12-13 15:15:28.000000000 +0100
+++ new/manpages/Makefile 2005-12-13 15:15:28.000000000 +0100
@@ -5,7 +5,6 @@
rpcgen.1 sprof.1 getconf.1
PROG_SEC3=getifaddrs.3
PROG_SEC5=locale.alias.5
-PROG_SEC8=rpcinfo.8
all:
@@ -17,4 +16,3 @@
install -m 644 ${PROG_SEC1} ${MANSEC}1
install -m 644 ${PROG_SEC3} ${MANSEC}3
install -m 644 ${PROG_SEC5} ${MANSEC}5
- install -m 644 ${PROG_SEC8} ${MANSEC}8
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/manpages/rpcinfo.8 new/manpages/rpcinfo.8
--- old/manpages/rpcinfo.8 2000-04-20 16:21:20.000000000 +0200
+++ new/manpages/rpcinfo.8 1970-01-01 01:00:00.000000000 +0100
@@ -1,166 +0,0 @@
-.\" from: @(#)rpcinfo.8c 2.2 88/08/03 4.0 RPCSRC; from 1.24 88/02/25 SMI
-.\" $Id: rpcinfo.8,v 1.1 1996/07/15 19:51:12 dholland Exp $
-.\"
-.Dd December 17, 1987
-.Dt RPCINFO 8
-.Os
-.Sh NAME
-.Nm rpcinfo
-.Nd report RPC information
-.Sh SYNOPSIS
-.Nm rpcinfo
-.Fl p
-.Op Ar host
-.Nm rpcinfo
-.Op Fl n Ar portnum
-.Fl u Ar host
-.Ar program
-.Op Ar version
-.Nm rpcinfo
-.Op Fl n Ar portnum
-.Fl t Ar host
-.Ar program
-.Op Ar version
-.Nm rpcinfo
-.Fl b
-.Ar program version
-.Nm rpcinfo
-.Fl d
-.Ar program version
-.Sh DESCRIPTION
-.Nm rpcinfo
-makes an
-.Tn RPC
-call to an
-.Tn RPC
-server and reports what it finds.
-.Sh OPTIONS
-.Bl -tag -width indent
-.It Fl p
-Probe the portmapper on
-.Ar host ,
-and print a list of all registered
-.Tn RPC
-programs. If
-.Ar host
-is not specified, it defaults to the value returned by
-.Xr hostname 1 .
-.It Fl u
-Make an
-.Tn RPC
-call to procedure 0 of
-.Ar program
-on the specified
-.Ar host
-using
-.Tn UDP ,
-and report whether a response was received.
-.It Fl t
-Make an
-.Tn RPC
-call to procedure 0 of
-.Ar program
-on the specified
-.Ar host
-using
-.Tn TCP ,
-and report whether a response was received.
-.It Fl n
-Use
-.Ar portnum
-as the port number for the
-.Fl t
-and
-.Fl u
-options instead of the port number given by the portmapper.
-.It Fl b
-Make an
-.Tn RPC
-broadcast to procedure 0 of the specified
-.Ar program
-and
-.Ar version
-using
-.Tn UDP
-and report all hosts that respond.
-.It Fl d
-Delete registration for the
-.Tn RPC
-service of the specified
-.Ar program
-and
-.Ar version .
-This option can be exercised only by the super-user.
-.El
-.Pp
-The
-.Ar program
-argument can be either a name or a number.
-.Pp
-If a
-.Ar version
-is specified,
-.Nm rpcinfo
-attempts to call that version of the specified
-.Ar program .
-Otherwise,
-.Nm rpcinfo
-attempts to find all the registered version
-numbers for the specified
-.Ar program
-by calling version 0 (which is presumed not
-to exist; if it does exist,
-.Ar rpcinfo
-attempts to obtain this information by calling
-an extremely high version
-number instead) and attempts to call each registered version.
-Note: the version number is required for
-.Fl b
-and
-.Fl d
-options.
-.Sh EXAMPLES
-To show all of the
-.Tn RPC
-services registered on the local machine use:
-.Pp
-.Dl example% rpcinfo -p
-.Pp
-To show all of the
-.Tn RPC
-services registered on the machine named
-.Ar klaxon
-use:
-.Pp
-.Dl example% rpcinfo -p klaxon
-.Pp
-To show all machines on the local net that are running the Yellow Pages
-service use:
-.Pp
-.Dl example% rpcinfo -b ypserv 'version' | uniq
-.Pp
-where 'version' is the current Yellow Pages version obtained from the
-results of the
-.Fl p
-switch above.
-.Pp
-To delete the registration for version 1 of the
-.Nm walld
-service use:
-.Pp
-.Dl example% rpcinfo -d walld 1
-.Sh SEE ALSO
-.Xr rpc 5 ,
-.Xr portmap 8
-.Rs
-.%T "RPC Programming Guide"
-.Re
-.Sh BUGS
-In releases prior to SunOS 3.0, the Network File System (NFS) did not
-register itself with the portmapper;
-.Nm rpcinfo
-cannot be used to make
-.Tn RPC
-calls to the
-.Tn NFS
-server on hosts running such releases.
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org
For additional commands, e-mail: opensuse-commit+help@opensuse.org