[glibc/f13/master] 2.12.2-1
Andreas Schwab
schwab at fedoraproject.org
Mon Dec 13 14:20:42 UTC 2010
commit 35bf200d2d6f2d68ccd020de07f9ea909f47c63e
Author: Andreas Schwab <schwab at redhat.com>
Date: Mon Dec 13 15:20:05 2010 +0100
2.12.2-1
.gitignore | 4 +-
glibc-fedora.patch | 626 +++++++++++++---------------------------------------
glibc.spec | 47 ++++-
sources | 4 +-
4 files changed, 207 insertions(+), 474 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index 3fe0150..23fdcfa 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,2 +1,2 @@
-/glibc-2.12.1-7-gfc0ed7b-fedora.tar.bz2
-/glibc-2.12.1-7-gfc0ed7b.tar.bz2
+/glibc-2.12.2-fedora.tar.bz2
+/glibc-2.12.2.tar.bz2
diff --git a/glibc-fedora.patch b/glibc-fedora.patch
index 90438f1..2a1f881 100644
--- a/glibc-fedora.patch
+++ b/glibc-fedora.patch
@@ -1,31 +1,18 @@
---- glibc-2.12.1-7-gfc0ed7b/ChangeLog
-+++ glibc-2.12.1-3/ChangeLog
-@@ -1,3 +1,24 @@
-+2010-10-22 Andreas Schwab <schwab at redhat.com>
-+
-+ * include/dlfcn.h (__RTLD_SECURE): Define.
-+ * elf/dl-load.c (_dl_map_object): Remove preloaded parameter. Use
-+ mode & __RTLD_SECURE instead.
-+ (open_path): Remove preloaded parameter to secure.
-+ * sysdeps/generic/ldsodefs.h (_dl_map_object): Adjust declaration.
-+ * elf/dl-open.c (dl_open_worker): Adjust call to _dl_map_object.
-+ * elf/dl-deps.c (openaux): Likewise.
-+ * elf/rtld.c (struct map_args): Remove is_preloaded.
-+ (map_doit): Don't use it.
-+ (dl_main): Likewise.
-+ (do_preload): Use __RTLD_SECURE instead of is_preloaded.
-+ (dlmopen_doit): Add __RTLD_SECURE to mode bits.
-+
-+2010-10-18 Andreas Schwab <schwab at redhat.com>
-+
-+ * elf/dl-load.c (is_dst): Remove last parameter.
-+ (_dl_dst_count): Ignore $ORIGIN in privileged programs.
-+ (_dl_dst_substitute): Likewise.
+--- glibc-2.12.2/ChangeLog
++++ /ChangeLog
+@@ -329,6 +329,11 @@
+ (do_preload): Use __RTLD_SECURE instead of is_preloaded.
+ (dlmopen_doit): Add __RTLD_SECURE to mode bits.
+
++2010-12-13 Andreas Schwab <schwab at redhat.com>
++
++ * elf/dl-object.c (_dl_new_object): Ignore origin of privileged
++ program.
+
2010-10-06 Ulrich Drepper <drepper at gmail.com>
* string/bug-strstr1.c: New file.
-@@ -44,6 +65,10 @@
+@@ -375,6 +380,10 @@
* version.h (VERSION): Bump for 2.12.1 release.
@@ -36,8 +23,8 @@
2010-06-02 Kirill A. Shutemov <kirill at shutemov.name>
* elf/dl-reloc.c: Flush cache after solving TEXTRELs if arch
---- glibc-2.12.1-7-gfc0ed7b/ChangeLog.15
-+++ glibc-2.12.1-3/ChangeLog.15
+--- glibc-2.12.2/ChangeLog.15
++++ /ChangeLog.15
@@ -477,6 +477,14 @@
2004-11-26 Jakub Jelinek <jakub at redhat.com>
@@ -103,8 +90,8 @@
2004-08-30 Roland McGrath <roland at frob.com>
* scripts/extract-abilist.awk: If `lastversion' variable defined, omit
---- glibc-2.12.1-7-gfc0ed7b/ChangeLog.16
-+++ glibc-2.12.1-3/ChangeLog.16
+--- glibc-2.12.2/ChangeLog.16
++++ /ChangeLog.16
@@ -2042,6 +2042,9 @@
(__MATHDECL_2): Use __REDIRECT_NTH instead of __REDIRECT
followed by __THROW.
@@ -158,23 +145,9 @@
2005-07-28 Thomas Schwinge <schwinge at nic-nac-project.de>
[BZ #1137]
---- glibc-2.12.1-7-gfc0ed7b/ChangeLog.17
-+++ glibc-2.12.1-3/ChangeLog.17
-@@ -13,6 +13,13 @@
- handled here anymore.
- Patch mostly by Matt Turner <mattst88 at gmail.com>.
-
-+2010-05-27 Andreas Schwab <schwab at redhat.com>
-+
-+ * elf/Makefile ($(objpfx)tst-tls10): Depend on
-+ $(objpfx)tst-tlsmod7.so.
-+ ($(objpfx)tst-tls11): Depend on $(objpfx)tst-tlsmod9.so.
-+ ($(objpfx)tst-tls12): Depend on $(objpfx)tst-tlsmod11.so.
-+
- 2010-05-03 Ulrich Drepper <drepper at redhat.com>
-
- * version.h (VERSION): Bump for 2.12 release.
-@@ -256,6 +263,12 @@
+--- glibc-2.12.2/ChangeLog.17
++++ /ChangeLog.17
+@@ -256,6 +256,12 @@
* Makerules (libc-abis): Fix search for libc-abis in add-ons.
@@ -187,7 +160,7 @@
2010-04-05 Thomas Schwinge <thomas at schwinge.name>
* sysdeps/gnu/unwind-resume.c: New, moved from nptl/sysdeps/pthread/.
-@@ -1010,6 +1023,19 @@
+@@ -1010,6 +1016,19 @@
* sysdeps/x86_64/fpu/fegetenv.c: Likewise
* sysdeps/s390/fpu/fegetenv.c: Likewise. Remove unused headers.
@@ -207,7 +180,7 @@
2010-02-05 H.J. Lu <hongjiu.lu at intel.com>
[BZ #11230]
-@@ -2953,6 +2979,11 @@ d2009-10-30 Ulrich Drepper <drepper at redhat.com>
+@@ -2953,6 +2972,11 @@ d2009-10-30 Ulrich Drepper <drepper at redhat.com>
* sysdeps/generic/ldsodefs.h (struct rtld_global): The map element in
the unique symbol hash table should not be const.
@@ -219,7 +192,7 @@
2009-07-21 Ulrich Drepper <drepper at redhat.com>
* sysdeps/x86_64/multiarch/strstr.c: Minor cleanups. Remove
-@@ -3218,6 +3249,11 @@ d2009-10-30 Ulrich Drepper <drepper at redhat.com>
+@@ -3218,6 +3242,11 @@ d2009-10-30 Ulrich Drepper <drepper at redhat.com>
out common code into new function get_common_indeces. Determine
extended family and model for Intel processors.
@@ -231,7 +204,7 @@
2009-06-26 Ulrich Drepper <drepper at redhat.com>
* resolv/resolv.h: Define RES_SNGLKUPREOP.
-@@ -11911,6 +11947,10 @@ d2009-10-30 Ulrich Drepper <drepper at redhat.com>
+@@ -11911,6 +11940,10 @@ d2009-10-30 Ulrich Drepper <drepper at redhat.com>
[BZ #4368]
* stdlib/stdlib.h: Remove obsolete part of comment for realpath.
@@ -242,7 +215,7 @@
2007-04-16 Ulrich Drepper <drepper at redhat.com>
[BZ #4364]
-@@ -13168,6 +13208,15 @@ d2009-10-30 Ulrich Drepper <drepper at redhat.com>
+@@ -13168,6 +13201,15 @@ d2009-10-30 Ulrich Drepper <drepper at redhat.com>
separators also if no non-zero digits found.
* stdlib/Makefile (tests): Add tst-strtod3.
@@ -258,8 +231,8 @@
2006-12-09 Ulrich Drepper <drepper at redhat.com>
[BZ #3632]
---- glibc-2.12.1-7-gfc0ed7b/Makeconfig
-+++ glibc-2.12.1-3/Makeconfig
+--- glibc-2.12.2/Makeconfig
++++ /Makeconfig
@@ -789,12 +789,12 @@ endif
# The assembler can generate debug information too.
ifndef ASFLAGS
@@ -276,8 +249,8 @@
ifndef BUILD_CC
BUILD_CC = $(CC)
---- glibc-2.12.1-7-gfc0ed7b/csu/Makefile
-+++ glibc-2.12.1-3/csu/Makefile
+--- glibc-2.12.2/csu/Makefile
++++ /csu/Makefile
@@ -93,7 +93,8 @@ omit-deps += $(crtstuff)
$(crtstuff:%=$(objpfx)%.o): %.o: %.S $(objpfx)defs.h
$(compile.S) -g0 $(ASFLAGS-.os) -o $@
@@ -288,8 +261,8 @@
vpath initfini.c $(sysdirs)
---- glibc-2.12.1-7-gfc0ed7b/csu/elf-init.c
-+++ glibc-2.12.1-3/csu/elf-init.c
+--- glibc-2.12.2/csu/elf-init.c
++++ /csu/elf-init.c
@@ -63,6 +63,23 @@ extern void (*__init_array_end []) (int, char **, char **)
extern void (*__fini_array_start []) (void) attribute_hidden;
extern void (*__fini_array_end []) (void) attribute_hidden;
@@ -314,8 +287,8 @@
/* These function symbols are provided for the .init/.fini section entry
points automagically by the linker. */
---- glibc-2.12.1-7-gfc0ed7b/debug/tst-chk1.c
-+++ glibc-2.12.1-3/debug/tst-chk1.c
+--- glibc-2.12.2/debug/tst-chk1.c
++++ /debug/tst-chk1.c
@@ -17,6 +17,9 @@
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
02111-1307 USA. */
@@ -344,196 +317,20 @@
# define O 0
# else
# define O 1
---- glibc-2.12.1-7-gfc0ed7b/elf/Makefile
-+++ glibc-2.12.1-3/elf/Makefile
-@@ -759,11 +759,11 @@ $(objpfx)tst-tls8.out: $(objpfx)tst-tlsmod3.so $(objpfx)tst-tlsmod4.so
- $(objpfx)tst-tls9: $(libdl)
- $(objpfx)tst-tls9.out: $(objpfx)tst-tlsmod5.so $(objpfx)tst-tlsmod6.so
-
--$(objpfx)tst-tls10: $(objpfx)tst-tlsmod8.so
-+$(objpfx)tst-tls10: $(objpfx)tst-tlsmod8.so $(objpfx)tst-tlsmod7.so
-
--$(objpfx)tst-tls11: $(objpfx)tst-tlsmod10.so
-+$(objpfx)tst-tls11: $(objpfx)tst-tlsmod10.so $(objpfx)tst-tlsmod9.so
-
--$(objpfx)tst-tls12: $(objpfx)tst-tlsmod12.so
-+$(objpfx)tst-tls12: $(objpfx)tst-tlsmod12.so $(objpfx)tst-tlsmod11.so
-
- $(objpfx)tst-tls13: $(libdl)
- $(objpfx)tst-tls13.out: $(objpfx)tst-tlsmod13a.so
---- glibc-2.12.1-7-gfc0ed7b/elf/dl-deps.c
-+++ glibc-2.12.1-3/elf/dl-deps.c
-@@ -62,7 +62,7 @@ openaux (void *a)
- {
- struct openaux_args *args = (struct openaux_args *) a;
-
-- args->aux = _dl_map_object (args->map, args->name, 0,
-+ args->aux = _dl_map_object (args->map, args->name,
- (args->map->l_type == lt_executable
- ? lt_library : args->map->l_type),
- args->trace_mode, args->open_mode,
---- glibc-2.12.1-7-gfc0ed7b/elf/dl-load.c
-+++ glibc-2.12.1-3/elf/dl-load.c
-@@ -169,8 +169,7 @@ local_strdup (const char *s)
-
-
- static size_t
--is_dst (const char *start, const char *name, const char *str,
-- int is_path, int secure)
-+is_dst (const char *start, const char *name, const char *str, int is_path)
- {
- size_t len;
- bool is_curly = false;
-@@ -199,11 +198,6 @@ is_dst (const char *start, const char *name, const char *str,
- && (!is_path || name[len] != ':'))
- return 0;
-
-- if (__builtin_expect (secure, 0)
-- && ((name[len] != '\0' && (!is_path || name[len] != ':'))
-- || (name != start + 1 && (!is_path || name[-2] != ':'))))
-- return 0;
--
- return len;
- }
-
-@@ -218,13 +212,12 @@ _dl_dst_count (const char *name, int is_path)
- {
- size_t len;
-
-- /* $ORIGIN is not expanded for SUID/GUID programs (except if it
-- is $ORIGIN alone) and it must always appear first in path. */
-+ /* $ORIGIN is not expanded for SUID/GUID programs. */
- ++name;
-- if ((len = is_dst (start, name, "ORIGIN", is_path,
-- INTUSE(__libc_enable_secure))) != 0
-- || (len = is_dst (start, name, "PLATFORM", is_path, 0)) != 0
-- || (len = is_dst (start, name, "LIB", is_path, 0)) != 0)
-+ if (((len = is_dst (start, name, "ORIGIN", is_path)) != 0
-+ && !INTUSE(__libc_enable_secure))
-+ || (len = is_dst (start, name, "PLATFORM", is_path)) != 0
-+ || (len = is_dst (start, name, "LIB", is_path)) != 0)
- ++cnt;
-
- name = strchr (name + len, '$');
-@@ -256,9 +249,12 @@ _dl_dst_substitute (struct link_map *l, const char *name, char *result,
- size_t len;
-
- ++name;
-- if ((len = is_dst (start, name, "ORIGIN", is_path,
-- INTUSE(__libc_enable_secure))) != 0)
-+ if ((len = is_dst (start, name, "ORIGIN", is_path)) != 0)
- {
-+ /* Ignore this path element in SUID/SGID programs. */
-+ if (INTUSE(__libc_enable_secure))
-+ repl = (const char *) -1;
-+ else
- #ifndef SHARED
- if (l == NULL)
- repl = _dl_get_origin ();
-@@ -266,9 +262,9 @@ _dl_dst_substitute (struct link_map *l, const char *name, char *result,
- #endif
- repl = l->l_origin;
- }
-- else if ((len = is_dst (start, name, "PLATFORM", is_path, 0)) != 0)
-+ else if ((len = is_dst (start, name, "PLATFORM", is_path)) != 0)
- repl = GLRO(dl_platform);
-- else if ((len = is_dst (start, name, "LIB", is_path, 0)) != 0)
-+ else if ((len = is_dst (start, name, "LIB", is_path)) != 0)
- repl = DL_DST_LIB;
-
- if (repl != NULL && repl != (const char *) -1)
-@@ -1815,7 +1811,7 @@ open_verify (const char *name, struct filebuf *fbp, struct link_map *loader,
- if MAY_FREE_DIRS is true. */
-
- static int
--open_path (const char *name, size_t namelen, int preloaded,
-+open_path (const char *name, size_t namelen, int secure,
- struct r_search_path_struct *sps, char **realname,
- struct filebuf *fbp, struct link_map *loader, int whatcode,
- bool *found_other_class)
-@@ -1897,7 +1893,7 @@ open_path (const char *name, size_t namelen, int preloaded,
- /* Remember whether we found any existing directory. */
- here_any |= this_dir->status[cnt] != nonexisting;
-
-- if (fd != -1 && __builtin_expect (preloaded, 0)
-+ if (fd != -1 && __builtin_expect (secure, 0)
- && INTUSE(__libc_enable_secure))
- {
- /* This is an extra security effort to make sure nobody can
-@@ -1966,7 +1962,7 @@ open_path (const char *name, size_t namelen, int preloaded,
-
- struct link_map *
- internal_function
--_dl_map_object (struct link_map *loader, const char *name, int preloaded,
-+_dl_map_object (struct link_map *loader, const char *name,
- int type, int trace_mode, int mode, Lmid_t nsid)
- {
- int fd;
-@@ -2070,7 +2066,8 @@ _dl_map_object (struct link_map *loader, const char *name, int preloaded,
- for (l = loader; l; l = l->l_loader)
- if (cache_rpath (l, &l->l_rpath_dirs, DT_RPATH, "RPATH"))
- {
-- fd = open_path (name, namelen, preloaded, &l->l_rpath_dirs,
-+ fd = open_path (name, namelen, mode & __RTLD_SECURE,
-+ &l->l_rpath_dirs,
- &realname, &fb, loader, LA_SER_RUNPATH,
- &found_other_class);
- if (fd != -1)
-@@ -2085,14 +2082,15 @@ _dl_map_object (struct link_map *loader, const char *name, int preloaded,
- && main_map != NULL && main_map->l_type != lt_loaded
- && cache_rpath (main_map, &main_map->l_rpath_dirs, DT_RPATH,
- "RPATH"))
-- fd = open_path (name, namelen, preloaded, &main_map->l_rpath_dirs,
-+ fd = open_path (name, namelen, mode & __RTLD_SECURE,
-+ &main_map->l_rpath_dirs,
- &realname, &fb, loader ?: main_map, LA_SER_RUNPATH,
- &found_other_class);
- }
+--- glibc-2.12.2/elf/dl-object.c
++++ /elf/dl-object.c
+@@ -220,6 +220,9 @@ _dl_new_object (char *realname, const char *libname, int type,
+ out:
+ new->l_origin = origin;
+ }
++ else if (INTUSE(__libc_enable_secure) && type == lt_executable)
++ /* The origin of a privileged program cannot be trusted. */
++ new->l_origin = (char *) -1;
- /* Try the LD_LIBRARY_PATH environment variable. */
- if (fd == -1 && env_path_list.dirs != (void *) -1)
-- fd = open_path (name, namelen, preloaded, &env_path_list,
-+ fd = open_path (name, namelen, mode & __RTLD_SECURE, &env_path_list,
- &realname, &fb,
- loader ?: GL(dl_ns)[LM_ID_BASE]._ns_loaded,
- LA_SER_LIBPATH, &found_other_class);
-@@ -2101,12 +2099,12 @@ _dl_map_object (struct link_map *loader, const char *name, int preloaded,
- if (fd == -1 && loader != NULL
- && cache_rpath (loader, &loader->l_runpath_dirs,
- DT_RUNPATH, "RUNPATH"))
-- fd = open_path (name, namelen, preloaded,
-+ fd = open_path (name, namelen, mode & __RTLD_SECURE,
- &loader->l_runpath_dirs, &realname, &fb, loader,
- LA_SER_RUNPATH, &found_other_class);
-
- if (fd == -1
-- && (__builtin_expect (! preloaded, 1)
-+ && (__builtin_expect (! (mode & __RTLD_SECURE), 1)
- || ! INTUSE(__libc_enable_secure)))
- {
- /* Check the list of libraries in the file /etc/ld.so.cache,
-@@ -2172,7 +2170,7 @@ _dl_map_object (struct link_map *loader, const char *name, int preloaded,
- && ((l = loader ?: GL(dl_ns)[nsid]._ns_loaded) == NULL
- || __builtin_expect (!(l->l_flags_1 & DF_1_NODEFLIB), 1))
- && rtld_search_dirs.dirs != (void *) -1)
-- fd = open_path (name, namelen, preloaded, &rtld_search_dirs,
-+ fd = open_path (name, namelen, mode & __RTLD_SECURE, &rtld_search_dirs,
- &realname, &fb, l, LA_SER_DEFAULT, &found_other_class);
-
- /* Add another newline when we are tracing the library loading. */
---- glibc-2.12.1-7-gfc0ed7b/elf/dl-open.c
-+++ glibc-2.12.1-3/elf/dl-open.c
-@@ -252,7 +252,7 @@ dl_open_worker (void *a)
-
- /* Load the named object. */
- struct link_map *new;
-- args->map = new = _dl_map_object (call_map, file, 0, lt_loaded, 0,
-+ args->map = new = _dl_map_object (call_map, file, lt_loaded, 0,
- mode | __RTLD_CALLMAP, args->nsid);
-
- /* If the pointer returned is NULL this means the RTLD_NOLOAD flag is
---- glibc-2.12.1-7-gfc0ed7b/elf/ldconfig.c
-+++ glibc-2.12.1-3/elf/ldconfig.c
+ return new;
+ }
+--- glibc-2.12.2/elf/ldconfig.c
++++ /elf/ldconfig.c
@@ -1031,17 +1031,19 @@ search_dirs (void)
@@ -615,67 +412,8 @@
}
const char *aux_cache_file = _PATH_LDCONFIG_AUX_CACHE;
---- glibc-2.12.1-7-gfc0ed7b/elf/rtld.c
-+++ glibc-2.12.1-3/elf/rtld.c
-@@ -589,7 +589,6 @@ struct map_args
- /* Argument to map_doit. */
- char *str;
- struct link_map *loader;
-- int is_preloaded;
- int mode;
- /* Return value of map_doit. */
- struct link_map *map;
-@@ -627,16 +626,17 @@ static void
- map_doit (void *a)
- {
- struct map_args *args = (struct map_args *) a;
-- args->map = _dl_map_object (args->loader, args->str,
-- args->is_preloaded, lt_library, 0, args->mode,
-- LM_ID_BASE);
-+ args->map = _dl_map_object (args->loader, args->str, lt_library, 0,
-+ args->mode, LM_ID_BASE);
- }
-
- static void
- dlmopen_doit (void *a)
- {
- struct dlmopen_args *args = (struct dlmopen_args *) a;
-- args->map = _dl_open (args->fname, RTLD_LAZY | __RTLD_DLOPEN | __RTLD_AUDIT,
-+ args->map = _dl_open (args->fname,
-+ (RTLD_LAZY | __RTLD_DLOPEN | __RTLD_AUDIT
-+ | __RTLD_SECURE),
- dl_main, LM_ID_NEWLM, _dl_argc, INTUSE(_dl_argv),
- __environ);
- }
-@@ -806,8 +806,7 @@ do_preload (char *fname, struct link_map *main_map, const char *where)
-
- args.str = fname;
- args.loader = main_map;
-- args.is_preloaded = 1;
-- args.mode = 0;
-+ args.mode = __RTLD_SECURE;
-
- unsigned int old_nloaded = GL(dl_ns)[LM_ID_BASE]._ns_nloaded;
-
-@@ -1054,7 +1053,6 @@ of this helper program; chances are you did not intend to run this program.\n\
-
- args.str = rtld_progname;
- args.loader = NULL;
-- args.is_preloaded = 0;
- args.mode = __RTLD_OPENEXEC;
- (void) _dl_catch_error (&objname, &err_str, &malloced, map_doit,
- &args);
-@@ -1066,7 +1064,7 @@ of this helper program; chances are you did not intend to run this program.\n\
- else
- {
- HP_TIMING_NOW (start);
-- _dl_map_object (NULL, rtld_progname, 0, lt_library, 0,
-+ _dl_map_object (NULL, rtld_progname, lt_library, 0,
- __RTLD_OPENEXEC, LM_ID_BASE);
- HP_TIMING_NOW (stop);
-
---- glibc-2.12.1-7-gfc0ed7b/elf/tst-stackguard1.c
-+++ glibc-2.12.1-3/elf/tst-stackguard1.c
+--- glibc-2.12.2/elf/tst-stackguard1.c
++++ /elf/tst-stackguard1.c
@@ -160,17 +160,21 @@ do_test (void)
the 16 runs, something is very wrong. */
int ndifferences = 0;
@@ -700,26 +438,16 @@
{
puts ("stack guard canaries are not randomized enough");
puts ("nor equal to the default canary value");
---- glibc-2.12.1-7-gfc0ed7b/include/bits/stdlib-ldbl.h
-+++ glibc-2.12.1-3/include/bits/stdlib-ldbl.h
+--- glibc-2.12.2/include/bits/stdlib-ldbl.h
++++ /include/bits/stdlib-ldbl.h
@@ -0,0 +1 @@
+#include <stdlib/bits/stdlib-ldbl.h>
---- glibc-2.12.1-7-gfc0ed7b/include/bits/wchar-ldbl.h
-+++ glibc-2.12.1-3/include/bits/wchar-ldbl.h
+--- glibc-2.12.2/include/bits/wchar-ldbl.h
++++ /include/bits/wchar-ldbl.h
@@ -0,0 +1 @@
+#include <wcsmbs/bits/wchar-ldbl.h>
---- glibc-2.12.1-7-gfc0ed7b/include/dlfcn.h
-+++ glibc-2.12.1-3/include/dlfcn.h
-@@ -9,6 +9,7 @@
- #define __RTLD_OPENEXEC 0x20000000
- #define __RTLD_CALLMAP 0x10000000
- #define __RTLD_AUDIT 0x08000000
-+#define __RTLD_SECURE 0x04000000 /* Apply additional security checks. */
-
- #define __LM_ID_CALLER -2
-
---- glibc-2.12.1-7-gfc0ed7b/include/features.h
-+++ glibc-2.12.1-3/include/features.h
+--- glibc-2.12.2/include/features.h
++++ /include/features.h
@@ -308,8 +308,13 @@
#endif
@@ -736,8 +464,8 @@
# define __USE_FORTIFY_LEVEL 2
# else
# define __USE_FORTIFY_LEVEL 1
---- glibc-2.12.1-7-gfc0ed7b/intl/locale.alias
-+++ glibc-2.12.1-3/intl/locale.alias
+--- glibc-2.12.2/intl/locale.alias
++++ /intl/locale.alias
@@ -57,8 +57,6 @@ korean ko_KR.eucKR
korean.euc ko_KR.eucKR
ko_KR ko_KR.eucKR
@@ -747,8 +475,8 @@
norwegian nb_NO.ISO-8859-1
nynorsk nn_NO.ISO-8859-1
polish pl_PL.ISO-8859-2
---- glibc-2.12.1-7-gfc0ed7b/libio/stdio.h
-+++ glibc-2.12.1-3/libio/stdio.h
+--- glibc-2.12.2/libio/stdio.h
++++ /libio/stdio.h
@@ -165,10 +165,12 @@ typedef _G_fpos64_t fpos64_t;
extern struct _IO_FILE *stdin; /* Standard input stream. */
extern struct _IO_FILE *stdout; /* Standard output stream. */
@@ -762,8 +490,8 @@
__BEGIN_NAMESPACE_STD
/* Remove file FILENAME. */
---- glibc-2.12.1-7-gfc0ed7b/locale/iso-4217.def
-+++ glibc-2.12.1-3/locale/iso-4217.def
+--- glibc-2.12.2/locale/iso-4217.def
++++ /locale/iso-4217.def
@@ -8,6 +8,7 @@
*
* !!! The list has to be sorted !!!
@@ -855,8 +583,8 @@
DEFINE_INT_CURR("PYG") /* Paraguay Guarani */
DEFINE_INT_CURR("QAR") /* Qatar Rial */
DEFINE_INT_CURR("ROL") /* Romanian Leu */
---- glibc-2.12.1-7-gfc0ed7b/locale/programs/locarchive.c
-+++ glibc-2.12.1-3/locale/programs/locarchive.c
+--- glibc-2.12.2/locale/programs/locarchive.c
++++ /locale/programs/locarchive.c
@@ -134,7 +134,7 @@ create_archive (const char *archivefname, struct locarhandle *ah)
size_t reserved = RESERVE_MMAP_SIZE;
int xflags = 0;
@@ -915,8 +643,8 @@
add_alias (struct locarhandle *ah, const char *alias, bool replace,
const char *oldname, uint32_t *locrec_offset_p)
{
---- glibc-2.12.1-7-gfc0ed7b/localedata/Makefile
-+++ glibc-2.12.1-3/localedata/Makefile
+--- glibc-2.12.2/localedata/Makefile
++++ /localedata/Makefile
@@ -227,6 +227,7 @@ $(INSTALL-SUPPORTED-LOCALES): install-locales-dir
echo -n '...'; \
input=`echo $$locale | sed 's/\([^.]*\)[^@]*\(.*\)/\1\2/'`; \
@@ -925,8 +653,8 @@
-i locales/$$input -c -f charmaps/$$charset \
$(addprefix --prefix=,$(install_root)) $$locale; \
echo ' done'; \
---- glibc-2.12.1-7-gfc0ed7b/localedata/SUPPORTED
-+++ glibc-2.12.1-3/localedata/SUPPORTED
+--- glibc-2.12.2/localedata/SUPPORTED
++++ /localedata/SUPPORTED
@@ -85,6 +85,7 @@ cy_GB.UTF-8/UTF-8 \
cy_GB/ISO-8859-14 \
da_DK.UTF-8/UTF-8 \
@@ -968,8 +696,8 @@
ta_IN/UTF-8 \
te_IN/UTF-8 \
tg_TJ.UTF-8/UTF-8 \
---- glibc-2.12.1-7-gfc0ed7b/localedata/locales/cy_GB
-+++ glibc-2.12.1-3/localedata/locales/cy_GB
+--- glibc-2.12.2/localedata/locales/cy_GB
++++ /localedata/locales/cy_GB
@@ -248,8 +248,11 @@ mon "<U0049><U006F><U006E><U0061><U0077><U0072>";/
d_t_fmt "<U0044><U0079><U0064><U0064><U0020><U0025><U0041><U0020><U0025><U0064><U0020><U006d><U0069><U0073><U0020><U0025><U0042><U0020><U0025><U0059><U0020><U0025><U0054><U0020><U0025><U005A>"
d_fmt "<U0025><U0064><U002E><U0025><U006D><U002E><U0025><U0079>"
@@ -984,8 +712,8 @@
END LC_TIME
LC_MESSAGES
---- glibc-2.12.1-7-gfc0ed7b/localedata/locales/en_GB
-+++ glibc-2.12.1-3/localedata/locales/en_GB
+--- glibc-2.12.2/localedata/locales/en_GB
++++ /localedata/locales/en_GB
@@ -116,8 +116,8 @@ mon "<U004A><U0061><U006E><U0075><U0061><U0072><U0079>";/
d_t_fmt "<U0025><U0061><U0020><U0025><U0064><U0020><U0025><U0062><U0020><U0025><U0059><U0020><U0025><U0054><U0020><U0025><U005A>"
d_fmt "<U0025><U0064><U002F><U0025><U006D><U002F><U0025><U0079>"
@@ -997,8 +725,8 @@
date_fmt "<U0025><U0061><U0020><U0025><U0062><U0020><U0025><U0065>/
<U0020><U0025><U0048><U003A><U0025><U004D><U003A><U0025><U0053><U0020>/
<U0025><U005A><U0020><U0025><U0059>"
---- glibc-2.12.1-7-gfc0ed7b/localedata/locales/no_NO
-+++ glibc-2.12.1-3/localedata/locales/no_NO
+--- glibc-2.12.2/localedata/locales/no_NO
++++ /localedata/locales/no_NO
@@ -0,0 +1,69 @@
+escape_char /
+comment_char %
@@ -1069,8 +797,8 @@
+LC_ADDRESS
+copy "nb_NO"
+END LC_ADDRESS
---- glibc-2.12.1-7-gfc0ed7b/localedata/locales/zh_TW
-+++ glibc-2.12.1-3/localedata/locales/zh_TW
+--- glibc-2.12.2/localedata/locales/zh_TW
++++ /localedata/locales/zh_TW
@@ -1,7 +1,7 @@
comment_char %
escape_char /
@@ -1098,14 +826,15 @@
revision "0.2"
date "2000-08-02"
%
---- glibc-2.12.1-7-gfc0ed7b/malloc/mcheck.c
-+++ glibc-2.12.1-3/malloc/mcheck.c
-@@ -24,9 +24,25 @@
+--- glibc-2.12.2/malloc/mcheck.c
++++ /malloc/mcheck.c
+@@ -25,10 +25,26 @@
# include <mcheck.h>
# include <stdint.h>
# include <stdio.h>
+# include <stdlib.h>
# include <libintl.h>
+ # include <errno.h>
#endif
+#ifdef _LIBC
@@ -1126,7 +855,7 @@
/* Old hook values. */
static void (*old_free_hook) (__ptr_t ptr, __const __ptr_t);
static __ptr_t (*old_malloc_hook) (__malloc_size_t size, const __ptr_t);
-@@ -197,7 +213,7 @@ freehook (__ptr_t ptr, const __ptr_t caller)
+@@ -199,7 +215,7 @@ freehook (__ptr_t ptr, const __ptr_t caller)
if (old_free_hook != NULL)
(*old_free_hook) (ptr, caller);
else
@@ -1135,7 +864,7 @@
__free_hook = freehook;
}
-@@ -214,7 +230,7 @@ mallochook (__malloc_size_t size, const __ptr_t caller)
+@@ -222,7 +238,7 @@ mallochook (__malloc_size_t size, const __ptr_t caller)
hdr = (struct hdr *) (*old_malloc_hook) (sizeof (struct hdr) + size + 1,
caller);
else
@@ -1144,7 +873,7 @@
__malloc_hook = mallochook;
if (hdr == NULL)
return NULL;
-@@ -245,7 +261,7 @@ memalignhook (__malloc_size_t alignment, __malloc_size_t size,
+@@ -259,7 +275,7 @@ memalignhook (__malloc_size_t alignment, __malloc_size_t size,
if (old_memalign_hook != NULL)
block = (*old_memalign_hook) (alignment, slop + size + 1, caller);
else
@@ -1153,7 +882,7 @@
__memalign_hook = memalignhook;
if (block == NULL)
return NULL;
-@@ -300,8 +316,8 @@ reallochook (__ptr_t ptr, __malloc_size_t size, const __ptr_t caller)
+@@ -320,8 +336,8 @@ reallochook (__ptr_t ptr, __malloc_size_t size, const __ptr_t caller)
sizeof (struct hdr) + size + 1,
caller);
else
@@ -1164,7 +893,7 @@
__free_hook = freehook;
__malloc_hook = mallochook;
__memalign_hook = memalignhook;
-@@ -361,8 +377,8 @@ mcheck (func)
+@@ -381,8 +397,8 @@ mcheck (func)
if (__malloc_initialized <= 0 && !mcheck_used)
{
/* We call malloc() once here to ensure it is initialized. */
@@ -1175,8 +904,8 @@
old_free_hook = __free_hook;
__free_hook = freehook;
---- glibc-2.12.1-7-gfc0ed7b/manual/libc.texinfo
-+++ glibc-2.12.1-3/manual/libc.texinfo
+--- glibc-2.12.2/manual/libc.texinfo
++++ /manual/libc.texinfo
@@ -5,7 +5,7 @@
@c setchapternewpage odd
@@ -1186,8 +915,8 @@
@direntry
* Libc: (libc). C library.
@end direntry
---- glibc-2.12.1-7-gfc0ed7b/misc/sys/cdefs.h
-+++ glibc-2.12.1-3/misc/sys/cdefs.h
+--- glibc-2.12.2/misc/sys/cdefs.h
++++ /misc/sys/cdefs.h
@@ -132,7 +132,10 @@
#define __bos(ptr) __builtin_object_size (ptr, __USE_FORTIFY_LEVEL > 1)
#define __bos0(ptr) __builtin_object_size (ptr, 0)
@@ -1231,8 +960,8 @@
# define __va_arg_pack() __builtin_va_arg_pack ()
# define __va_arg_pack_len() __builtin_va_arg_pack_len ()
#endif
---- glibc-2.12.1-7-gfc0ed7b/nis/nss
-+++ glibc-2.12.1-3/nis/nss
+--- glibc-2.12.2/nis/nss
++++ /nis/nss
@@ -25,7 +25,7 @@
# memory with every getXXent() call. Otherwise each getXXent() call
# might result into a network communication with the server to get
@@ -1242,21 +971,9 @@
#
# ADJUNCT_AS_SHADOW
# If set to TRUE, the passwd routines in the NIS NSS module will not
---- glibc-2.12.1-7-gfc0ed7b/nptl/ChangeLog
-+++ glibc-2.12.1-3/nptl/ChangeLog
-@@ -3,6 +3,11 @@
- * sysdeps/unix/sysv/linux/sh/lowlevellock.S: Fix incorrect
- location of ifndef __ASSUME_FUTEX_CLOCK_REALTIME.
-
-+2010-05-27 Andreas Schwab <schwab at redhat.com>
-+
-+ * Makefile ($(objpfx)tst-_res1): Depend on
-+ $(objpfx)tst-_res1mod1.so.
-+
- 2010-04-09 Ulrich Drepper <drepper at redhat.com>
-
- [BZ #11390]
-@@ -3889,6 +3894,15 @@
+--- glibc-2.12.2/nptl/ChangeLog
++++ /nptl/ChangeLog
+@@ -3938,6 +3938,15 @@
Use __sigfillset. Document that sigfillset does the right thing wrt
to SIGSETXID.
@@ -1272,7 +989,7 @@
2005-07-11 Jakub Jelinek <jakub at redhat.com>
[BZ #1102]
-@@ -4625,6 +4639,11 @@
+@@ -4674,6 +4683,11 @@
Move definition inside libpthread, libc, librt check. Provide
definition for rtld.
@@ -1284,7 +1001,7 @@
2004-09-02 Ulrich Drepper <drepper at redhat.com>
* sysdeps/alpha/jmpbuf-unwind.h: Define __libc_unwind_longjmp.
-@@ -6699,6 +6718,11 @@
+@@ -6748,6 +6762,11 @@
* Makefile [$(build-shared) = yes] (tests): Depend on $(test-modules).
@@ -1296,9 +1013,9 @@
2003-07-25 Jakub Jelinek <jakub at redhat.com>
* tst-cancel17.c (do_test): Check if aio_cancel failed.
---- glibc-2.12.1-7-gfc0ed7b/nptl/Makefile
-+++ glibc-2.12.1-3/nptl/Makefile
-@@ -341,7 +341,8 @@ endif
+--- glibc-2.12.2/nptl/Makefile
++++ /nptl/Makefile
+@@ -342,7 +342,8 @@ endif
extra-objs += $(crti-objs) $(crtn-objs)
omit-deps += crti crtn
@@ -1308,16 +1025,7 @@
endif
CFLAGS-flockfile.c = -D_IO_MTSAFE_IO
-@@ -491,7 +492,7 @@ $(objpfx)tst-rwlock14: $(common-objpfx)rt/librt.so
- $(objpfx)tst-_res1mod2.so: $(objpfx)tst-_res1mod1.so
- LDFLAGS-tst-_res1mod1.so = -Wl,-soname,tst-_res1mod1.so
- LDFLAGS-tst-_res1mod2.so = -Wl,-soname,tst-_res1mod2.so
--$(objpfx)tst-_res1: $(objpfx)tst-_res1mod2.so $(shared-thread-library)
-+$(objpfx)tst-_res1: $(objpfx)tst-_res1mod2.so $(objpfx)tst-_res1mod1.so $(shared-thread-library)
- else
- $(objpfx)tst-cond11: $(common-objpfx)rt/librt.a
- $(objpfx)tst-cond19: $(common-objpfx)rt/librt.a
-@@ -527,15 +528,19 @@ $(addprefix $(objpfx), \
+@@ -529,15 +530,19 @@ $(addprefix $(objpfx), \
$(tests) $(xtests) $(test-srcs))): $(objpfx)libpthread.so \
$(objpfx)libpthread_nonshared.a
$(objpfx)tst-unload: $(common-objpfx)dlfcn/libdl.so
@@ -1339,8 +1047,8 @@
else
$(addprefix $(objpfx),$(tests) $(test-srcs)): $(objpfx)libpthread.a
endif
---- glibc-2.12.1-7-gfc0ed7b/nptl/sysdeps/unix/sysv/linux/bits/posix_opt.h
-+++ glibc-2.12.1-3/nptl/sysdeps/unix/sysv/linux/bits/posix_opt.h
+--- glibc-2.12.2/nptl/sysdeps/unix/sysv/linux/bits/posix_opt.h
++++ /nptl/sysdeps/unix/sysv/linux/bits/posix_opt.h
@@ -189,4 +189,7 @@
/* Typed memory objects are not available. */
#define _POSIX_TYPED_MEMORY_OBJECTS -1
@@ -1349,8 +1057,8 @@
+#define _XOPEN_STREAMS -1
+
#endif /* bits/posix_opt.h */
---- glibc-2.12.1-7-gfc0ed7b/nptl/sysdeps/unix/sysv/linux/kernel-features.h
-+++ glibc-2.12.1-3/nptl/sysdeps/unix/sysv/linux/kernel-features.h
+--- glibc-2.12.2/nptl/sysdeps/unix/sysv/linux/kernel-features.h
++++ /nptl/sysdeps/unix/sysv/linux/kernel-features.h
@@ -0,0 +1,6 @@
+#include_next <kernel-features.h>
+
@@ -1358,8 +1066,8 @@
+#ifndef __ASSUME_CLONE_THREAD_FLAGS
+# define __ASSUME_CLONE_THREAD_FLAGS 1
+#endif
---- glibc-2.12.1-7-gfc0ed7b/nptl/tst-stackguard1.c
-+++ glibc-2.12.1-3/nptl/tst-stackguard1.c
+--- glibc-2.12.2/nptl/tst-stackguard1.c
++++ /nptl/tst-stackguard1.c
@@ -190,17 +190,21 @@ do_test (void)
the 16 runs, something is very wrong. */
int ndifferences = 0;
@@ -1384,8 +1092,8 @@
{
puts ("stack guard canaries are not randomized enough");
puts ("nor equal to the default canary value");
---- glibc-2.12.1-7-gfc0ed7b/nscd/nscd.conf
-+++ glibc-2.12.1-3/nscd/nscd.conf
+--- glibc-2.12.2/nscd/nscd.conf
++++ /nscd/nscd.conf
@@ -33,7 +33,7 @@
# logfile /var/log/nscd.log
# threads 4
@@ -1395,8 +1103,8 @@
# stat-user somebody
debug-level 0
# reload-count 5
---- glibc-2.12.1-7-gfc0ed7b/nscd/nscd.init
-+++ glibc-2.12.1-3/nscd/nscd.init
+--- glibc-2.12.2/nscd/nscd.init
++++ /nscd/nscd.init
@@ -9,6 +9,7 @@
# slow naming services like NIS, NIS+, LDAP, or hesiod.
# processname: /usr/sbin/nscd
@@ -1473,9 +1181,9 @@
;;
*)
echo $"Usage: $0 {start|stop|status|restart|reload|condrestart}"
---- glibc-2.12.1-7-gfc0ed7b/posix/Makefile
-+++ glibc-2.12.1-3/posix/Makefile
-@@ -305,15 +305,8 @@ $(inst_libexecdir)/getconf: $(inst_bindir)/getconf \
+--- glibc-2.12.2/posix/Makefile
++++ /posix/Makefile
+@@ -317,15 +317,8 @@ $(inst_libexecdir)/getconf: $(inst_bindir)/getconf \
mv -f $@/$$spec.new $@/$$spec; \
done < $(objpfx)getconf.speclist
@@ -1495,8 +1203,8 @@
+ | sed -n -e '/START_OF_STRINGS/,$${/\(POSIX_V[67]\|_XBS5\)_/{s/^[^"]*"//;s/".*$$//;p}}' \
+ > $@.new
mv -f $@.new $@
---- glibc-2.12.1-7-gfc0ed7b/posix/gai.conf
-+++ glibc-2.12.1-3/posix/gai.conf
+--- glibc-2.12.2/posix/gai.conf
++++ /posix/gai.conf
@@ -41,7 +41,7 @@
#
# precedence <mask> <value>
@@ -1521,8 +1229,8 @@
#scopev4 ::ffff:0.0.0.0/96 14
+#
+# This is what the Red Hat setting currently uses.
---- glibc-2.12.1-7-gfc0ed7b/posix/getconf.speclist.h
-+++ glibc-2.12.1-3/posix/getconf.speclist.h
+--- glibc-2.12.2/posix/getconf.speclist.h
++++ /posix/getconf.speclist.h
@@ -0,0 +1,39 @@
+#include <unistd.h>
+const char *START_OF_STRINGS =
@@ -1563,8 +1271,8 @@
+"XBS5_LPBIG_OFFBIG"
+#endif
+"";
---- glibc-2.12.1-7-gfc0ed7b/streams/Makefile
-+++ glibc-2.12.1-3/streams/Makefile
+--- glibc-2.12.2/streams/Makefile
++++ /streams/Makefile
@@ -21,7 +21,7 @@
#
subdir := streams
@@ -1574,8 +1282,8 @@
routines = isastream getmsg getpmsg putmsg putpmsg fattach fdetach
include ../Rules
---- glibc-2.12.1-7-gfc0ed7b/sysdeps/generic/dl-cache.h
-+++ glibc-2.12.1-3/sysdeps/generic/dl-cache.h
+--- glibc-2.12.2/sysdeps/generic/dl-cache.h
++++ /sysdeps/generic/dl-cache.h
@@ -36,6 +36,14 @@
# define add_system_dir(dir) add_dir (dir)
#endif
@@ -1591,24 +1299,8 @@
#define CACHEMAGIC "ld.so-1.7.0"
/* libc5 and glibc 2.0/2.1 use the same format. For glibc 2.2 another
---- glibc-2.12.1-7-gfc0ed7b/sysdeps/generic/ldsodefs.h
-+++ glibc-2.12.1-3/sysdeps/generic/ldsodefs.h
-@@ -824,11 +824,9 @@ extern void _dl_receive_error (receiver_fct fct, void (*operate) (void *),
-
- /* Open the shared object NAME and map in its segments.
- LOADER's DT_RPATH is used in searching for NAME.
-- If the object is already opened, returns its existing map.
-- For preloaded shared objects PRELOADED is set to a non-zero
-- value to allow additional security checks. */
-+ If the object is already opened, returns its existing map. */
- extern struct link_map *_dl_map_object (struct link_map *loader,
-- const char *name, int preloaded,
-+ const char *name,
- int type, int trace_mode, int mode,
- Lmid_t nsid)
- internal_function attribute_hidden;
---- glibc-2.12.1-7-gfc0ed7b/sysdeps/i386/Makefile
-+++ glibc-2.12.1-3/sysdeps/i386/Makefile
+--- glibc-2.12.2/sysdeps/i386/Makefile
++++ /sysdeps/i386/Makefile
@@ -2,6 +2,8 @@
# Every i386 port in use uses gas syntax (I think).
asm-CPPFLAGS += -DGAS_SYNTAX
@@ -1633,8 +1325,8 @@
endif
ifeq ($(subdir),elf)
---- glibc-2.12.1-7-gfc0ed7b/sysdeps/i386/i686/Makefile
-+++ glibc-2.12.1-3/sysdeps/i386/i686/Makefile
+--- glibc-2.12.2/sysdeps/i386/i686/Makefile
++++ /sysdeps/i386/i686/Makefile
@@ -9,19 +9,3 @@ stack-align-test-flags += -msse
ifeq ($(subdir),string)
sysdep_routines += cacheinfo
@@ -1655,8 +1347,8 @@
-ASFLAGS-.ob += -Wa,-mtune=i686
-ASFLAGS-.oS += -Wa,-mtune=i686
-endif
---- glibc-2.12.1-7-gfc0ed7b/sysdeps/ia64/Makefile
-+++ glibc-2.12.1-3/sysdeps/ia64/Makefile
+--- glibc-2.12.2/sysdeps/ia64/Makefile
++++ /sysdeps/ia64/Makefile
@@ -12,8 +12,8 @@ elide-routines.os += hp-timing
ifeq (yes,$(build-shared))
@@ -1668,8 +1360,8 @@
endif
endif
---- glibc-2.12.1-7-gfc0ed7b/sysdeps/ia64/ia64libgcc.S
-+++ glibc-2.12.1-3/sysdeps/ia64/ia64libgcc.S
+--- glibc-2.12.2/sysdeps/ia64/ia64libgcc.S
++++ /sysdeps/ia64/ia64libgcc.S
@@ -1,350 +0,0 @@
-/* From the Intel IA-64 Optimization Guide, choose the minimum latency
- alternative. */
@@ -2021,8 +1713,8 @@
- .symver ___multi3, __multi3 at GLIBC_2.2
-
-#endif
---- glibc-2.12.1-7-gfc0ed7b/sysdeps/ia64/libgcc-compat.c
-+++ glibc-2.12.1-3/sysdeps/ia64/libgcc-compat.c
+--- glibc-2.12.2/sysdeps/ia64/libgcc-compat.c
++++ /sysdeps/ia64/libgcc-compat.c
@@ -0,0 +1,84 @@
+/* pre-.hidden libgcc compatibility
+ Copyright (C) 2002 Free Software Foundation, Inc.
@@ -2108,8 +1800,8 @@
+symbol_version (INTUSE (__multi3), __multi3, GLIBC_2.2);
+
+#endif
---- glibc-2.12.1-7-gfc0ed7b/sysdeps/posix/getaddrinfo.c
-+++ glibc-2.12.1-3/sysdeps/posix/getaddrinfo.c
+--- glibc-2.12.2/sysdeps/posix/getaddrinfo.c
++++ /sysdeps/posix/getaddrinfo.c
@@ -1099,10 +1099,12 @@ static const struct scopeentry
/* Link-local addresses: scope 2. */
{ { { 169, 254, 0, 0 } }, htonl_c (0xffff0000), 2 },
@@ -2123,8 +1815,8 @@
/* Default: scope 14. */
{ { { 0, 0, 0, 0 } }, htonl_c (0x00000000), 14 }
};
---- glibc-2.12.1-7-gfc0ed7b/sysdeps/powerpc/powerpc64/Makefile
-+++ glibc-2.12.1-3/sysdeps/powerpc/powerpc64/Makefile
+--- glibc-2.12.2/sysdeps/powerpc/powerpc64/Makefile
++++ /sysdeps/powerpc/powerpc64/Makefile
@@ -30,6 +30,7 @@ ifneq ($(elf),no)
# we use -fpic instead which is much better.
CFLAGS-initfini.s += -fpic -O1
@@ -2133,8 +1825,8 @@
endif
ifeq ($(subdir),elf)
---- glibc-2.12.1-7-gfc0ed7b/sysdeps/unix/nice.c
-+++ glibc-2.12.1-3/sysdeps/unix/nice.c
+--- glibc-2.12.2/sysdeps/unix/nice.c
++++ /sysdeps/unix/nice.c
@@ -42,7 +42,12 @@ nice (int incr)
__set_errno (save);
}
@@ -2149,8 +1841,8 @@
if (result == -1)
{
if (errno == EACCES)
---- glibc-2.12.1-7-gfc0ed7b/sysdeps/unix/sysv/linux/check_pf.c
-+++ glibc-2.12.1-3/sysdeps/unix/sysv/linux/check_pf.c
+--- glibc-2.12.2/sysdeps/unix/sysv/linux/check_pf.c
++++ /sysdeps/unix/sysv/linux/check_pf.c
@@ -27,13 +27,10 @@
#include <unistd.h>
#include <sys/socket.h>
@@ -2166,8 +1858,8 @@
#ifndef IFA_F_HOMEADDRESS
# define IFA_F_HOMEADDRESS 0
---- glibc-2.12.1-7-gfc0ed7b/sysdeps/unix/sysv/linux/dl-osinfo.h
-+++ glibc-2.12.1-3/sysdeps/unix/sysv/linux/dl-osinfo.h
+--- glibc-2.12.2/sysdeps/unix/sysv/linux/dl-osinfo.h
++++ /sysdeps/unix/sysv/linux/dl-osinfo.h
@@ -17,10 +17,13 @@
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
02111-1307 USA. */
@@ -2215,8 +1907,8 @@
}
else
#endif
---- glibc-2.12.1-7-gfc0ed7b/sysdeps/unix/sysv/linux/futimesat.c
-+++ glibc-2.12.1-3/sysdeps/unix/sysv/linux/futimesat.c
+--- glibc-2.12.2/sysdeps/unix/sysv/linux/futimesat.c
++++ /sysdeps/unix/sysv/linux/futimesat.c
@@ -37,14 +37,14 @@ futimesat (fd, file, tvp)
{
int result;
@@ -2259,8 +1951,8 @@
{
size_t filelen = strlen (file);
if (__builtin_expect (filelen == 0, 0))
---- glibc-2.12.1-7-gfc0ed7b/sysdeps/unix/sysv/linux/i386/dl-cache.h
-+++ glibc-2.12.1-3/sysdeps/unix/sysv/linux/i386/dl-cache.h
+--- glibc-2.12.2/sysdeps/unix/sysv/linux/i386/dl-cache.h
++++ /sysdeps/unix/sysv/linux/i386/dl-cache.h
@@ -0,0 +1,59 @@
+/* Support for reading /etc/ld.so.cache files written by Linux ldconfig.
+ Copyright (C) 2004 Free Software Foundation, Inc.
@@ -2321,8 +2013,8 @@
+ } while (0)
+
+#include_next <dl-cache.h>
---- glibc-2.12.1-7-gfc0ed7b/sysdeps/unix/sysv/linux/ia64/dl-cache.h
-+++ glibc-2.12.1-3/sysdeps/unix/sysv/linux/ia64/dl-cache.h
+--- glibc-2.12.2/sysdeps/unix/sysv/linux/ia64/dl-cache.h
++++ /sysdeps/unix/sysv/linux/ia64/dl-cache.h
@@ -22,4 +22,31 @@
#define _dl_cache_check_flags(flags) \
((flags) == _DL_CACHE_DEFAULT_ID)
@@ -2355,29 +2047,29 @@
+ } while (0)
+
#include_next <dl-cache.h>
---- glibc-2.12.1-7-gfc0ed7b/sysdeps/unix/sysv/linux/ia64/dl-procinfo.c
-+++ glibc-2.12.1-3/sysdeps/unix/sysv/linux/ia64/dl-procinfo.c
+--- glibc-2.12.2/sysdeps/unix/sysv/linux/ia64/dl-procinfo.c
++++ /sysdeps/unix/sysv/linux/ia64/dl-procinfo.c
@@ -0,0 +1,5 @@
+#ifdef IS_IN_ldconfig
+#include <sysdeps/i386/dl-procinfo.c>
+#else
+#include <sysdeps/generic/dl-procinfo.c>
+#endif
---- glibc-2.12.1-7-gfc0ed7b/sysdeps/unix/sysv/linux/ia64/dl-procinfo.h
-+++ glibc-2.12.1-3/sysdeps/unix/sysv/linux/ia64/dl-procinfo.h
+--- glibc-2.12.2/sysdeps/unix/sysv/linux/ia64/dl-procinfo.h
++++ /sysdeps/unix/sysv/linux/ia64/dl-procinfo.h
@@ -0,0 +1,5 @@
+#ifdef IS_IN_ldconfig
+#include <sysdeps/unix/sysv/linux/i386/dl-procinfo.h>
+#else
+#include <sysdeps/generic/dl-procinfo.h>
+#endif
---- glibc-2.12.1-7-gfc0ed7b/sysdeps/unix/sysv/linux/ia64/ldd-rewrite.sed
-+++ glibc-2.12.1-3/sysdeps/unix/sysv/linux/ia64/ldd-rewrite.sed
+--- glibc-2.12.2/sysdeps/unix/sysv/linux/ia64/ldd-rewrite.sed
++++ /sysdeps/unix/sysv/linux/ia64/ldd-rewrite.sed
@@ -1 +1 @@
-s_^\(RTLDLIST=\)\([^ ]*\)-ia64\(\.so\.[0-9.]*\)[ ]*$_\1"\2-ia64\3 \2\3"_
+s_^\(RTLDLIST=\)\([^ ]*\)-ia64\(\.so\.[0-9.]*\)[ ]*$_\1"\2-ia64\3 /emul/ia32-linux\2\3"_
---- glibc-2.12.1-7-gfc0ed7b/sysdeps/unix/sysv/linux/netlinkaccess.h
-+++ glibc-2.12.1-3/sysdeps/unix/sysv/linux/netlinkaccess.h
+--- glibc-2.12.2/sysdeps/unix/sysv/linux/netlinkaccess.h
++++ /sysdeps/unix/sysv/linux/netlinkaccess.h
@@ -25,6 +25,24 @@
#include <kernel-features.h>
@@ -2403,8 +2095,8 @@
struct netlink_res
{
---- glibc-2.12.1-7-gfc0ed7b/sysdeps/unix/sysv/linux/paths.h
-+++ glibc-2.12.1-3/sysdeps/unix/sysv/linux/paths.h
+--- glibc-2.12.2/sysdeps/unix/sysv/linux/paths.h
++++ /sysdeps/unix/sysv/linux/paths.h
@@ -62,7 +62,7 @@
#define _PATH_TTY "/dev/tty"
#define _PATH_UNIX "/boot/vmlinux"
@@ -2414,13 +2106,13 @@
#define _PATH_WTMP "/var/log/wtmp"
/* Provide trailing slash, since mostly used for building pathnames. */
---- glibc-2.12.1-7-gfc0ed7b/sysdeps/unix/sysv/linux/sparc/sparc64/fxstat.c
-+++ glibc-2.12.1-3/sysdeps/unix/sysv/linux/sparc/sparc64/fxstat.c
+--- glibc-2.12.2/sysdeps/unix/sysv/linux/sparc/sparc64/fxstat.c
++++ /sysdeps/unix/sysv/linux/sparc/sparc64/fxstat.c
@@ -1 +1 @@
-#include "../../fxstat.c"
+#include "../../i386/fxstat.c"
---- glibc-2.12.1-7-gfc0ed7b/sysdeps/unix/sysv/linux/tcsetattr.c
-+++ glibc-2.12.1-3/sysdeps/unix/sysv/linux/tcsetattr.c
+--- glibc-2.12.2/sysdeps/unix/sysv/linux/tcsetattr.c
++++ /sysdeps/unix/sysv/linux/tcsetattr.c
@@ -49,6 +49,7 @@ tcsetattr (fd, optional_actions, termios_p)
{
struct __kernel_termios k_termios;
@@ -2466,8 +2158,8 @@
+ return retval;
}
libc_hidden_def (tcsetattr)
---- glibc-2.12.1-7-gfc0ed7b/timezone/zic.c
-+++ glibc-2.12.1-3/timezone/zic.c
+--- glibc-2.12.2/timezone/zic.c
++++ /timezone/zic.c
@@ -1921,7 +1921,7 @@ const int zonecount;
if (stdrp != NULL && stdrp->r_hiyear == 2037)
return;
diff --git a/glibc.spec b/glibc.spec
index 01338de..16d3318 100644
--- a/glibc.spec
+++ b/glibc.spec
@@ -1,5 +1,6 @@
-%define glibcsrcdir glibc-2.12.1-7-gfc0ed7b
-%define glibcversion 2.12.1
+%define glibcsrcdir glibc-2.12.2
+%define glibc_release_url http://ftp.gnu.org/pub/gnu/glibc/
+%define glibcversion 2.12.2
### glibc.spec.in follows:
%define run_glibc_tests 1
%define auxarches athlon sparcv9v sparc64v alphaev6
@@ -23,7 +24,7 @@
Summary: The GNU libc libraries
Name: glibc
Version: %{glibcversion}
-Release: 4
+Release: 1
# GPLv2+ is used in a bunch of programs, LGPLv2+ is used for libraries.
# Things that are linked directly into dynamically linked programs
# and shared libraries (e.g. crt files, lib*_nonshared.a) have an additional
@@ -1031,6 +1032,46 @@ rm -f *.filelist*
%endif
%changelog
+* Mon Dec 13 2010 Andreas Schwab <schwab at redhat.com> - 2.12.2-1
+- Update to 2.12.2 release
+ - Declare wcpcpy and wcpncpy only under _GNU_SOURCE
+ - Fix use of restrict in wchar.h and string.h
+ - Fix race in qsort_r initialization (BZ#11655)
+ - Fix IPTOS_CLASS definition (BZ#11903)
+ - Don't ignore zero TTL in DNS answers
+ - Fix x86 pthread_cond_signal() FUTEX_WAKE_OP fallback
+ - Work around kernel rejecting valid absolute timestamps
+ - Allow aux_cache_file open()ing to fail silently even in the chroot
+ mode (BZ#11149)
+ - Fix multiple nss_compat initgroups() bugs (BZ#10085)
+ - Properly convert f_fsid in statvfs (BZ#11611)
+ - Define MAP_HUGETLB and SWAP_FLAG_DISCARD
+ - Avoid too much stack use in fnmatch (BZ#11883)
+ - Fix comparison in sqrtl for IBM long double 128
+ - Fix warnings in __bswap_16 (BZ#12194)
+ - Properly quote output of locale (BZ#11904)
+ - Fix perturbing in malloc on free (BZ#12140)
+ - Don't expand DST twice in dl_open
+ - Fix memory leak for some invalid regular expressions (BZ#12078)
+ - Linux getifaddrs might return entries with ->ifa_addr being NULL
+ (BZ#12093)
+ - Handle large malloc requests (BZ#12005)
+ - getdents64 fallback d_type support
+ - Fix register conflict in s390 ____longjmp_chk
+ - Fix _FORITY_SOURCE version of longjmp for Linux/x86-64 (BZ#11968)
+ - Fix array overflow in floating point parser (BZ#7066)
+ - Missing server address again leads to localhost being used (BZ#10851)
+ - Document M_PERTURB
+ - Fix vDSO synthetic hwcap handling so they are not masked out from
+ ld.so.cache matching
+ - 32bit memset-sse2.S fails with uneven cache size (BZ#12191)
+ - Verify in ttyname() that the symlink is valid (BZ#12167)
+ - Fix concurrency problem between dl_open and dl_iterate_phdr
+ - Fix x86-64 strchr propagation of search byte into all bytes of SSE
+ register (BZ#12159)
+ - Fix alignment of AVX safe area on x86-64 (BZ#12113, #643889)
+- Don't ignore $ORIGIN in libraries
+
* Fri Oct 22 2010 Andreas Schwab <schwab at redhat.com> - 2.12.1-4
- Require suid bit on audit objects in privileged programs (CVE-2010-3856)
diff --git a/sources b/sources
index edacebe..e7e1a65 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,2 @@
-6adc738b68de953ee40106c35d47eb4a glibc-2.12.1-7-gfc0ed7b-fedora.tar.bz2
-7bf150a7e0f5e4a70acfea24a88f7103 glibc-2.12.1-7-gfc0ed7b.tar.bz2
+6f43af0a0c5680bf7876e548f847bf22 glibc-2.12.2-fedora.tar.bz2
+903fcfa547df2f453476800e0838fe52 glibc-2.12.2.tar.bz2
More information about the scm-commits
mailing list