From 9d560ee089fd0267684a9f71e91096cafe206cd6 Mon Sep 17 00:00:00 2001 From: Siddhesh Poyarekar Date: Tue, 9 Jul 2013 23:15:48 +0530 Subject: [PATCH] Resync with upstream master --- glibc-fedora-__libc_multiple_libcs.patch | 4 ++-- glibc-fedora-elf-ORIGIN.patch | 11 +++++++---- glibc.spec | 7 +++++-- sources | 4 ++-- 4 files changed, 16 insertions(+), 10 deletions(-) diff --git a/glibc-fedora-__libc_multiple_libcs.patch b/glibc-fedora-__libc_multiple_libcs.patch index d15920a..50d7343 100644 --- a/glibc-fedora-__libc_multiple_libcs.patch +++ b/glibc-fedora-__libc_multiple_libcs.patch @@ -42,8 +42,8 @@ Subject: [PATCH] Properly set __libc_multiple_libcs --- a/elf/dl-support.c +++ b/elf/dl-support.c @@ -81,10 +81,8 @@ unsigned long long _dl_load_adds; - create a fake scope containing nothing. */ - struct r_scope_elem _dl_initial_searchlist; + .r_nlist = 1, + }; -#ifndef HAVE_INLINED_SYSCALLS /* Nonzero during startup. */ diff --git a/glibc-fedora-elf-ORIGIN.patch b/glibc-fedora-elf-ORIGIN.patch index bfaff83..ef08187 100644 --- a/glibc-fedora-elf-ORIGIN.patch +++ b/glibc-fedora-elf-ORIGIN.patch @@ -57,7 +57,7 @@ index 18a83d2..6e16a9a 100644 ++cnt; name = strchr (name + len, '$'); -@@ -338,9 +328,16 @@ _dl_dst_substitute (struct link_map *l, const char *name, char *result, +@@ -338,10 +328,18 @@ _dl_dst_substitute (struct link_map *l, const char *name, char *result, size_t len; ++name; @@ -65,6 +65,7 @@ index 18a83d2..6e16a9a 100644 - INTUSE(__libc_enable_secure))) != 0) + if ((len = is_dst (start, name, "ORIGIN", is_path)) != 0) { +- repl = l->l_origin; + /* For SUID/GUID programs $ORIGIN must always appear + first in a path element. */ + if (__builtin_expect (INTUSE(__libc_enable_secure), 0) @@ -73,9 +74,11 @@ index 18a83d2..6e16a9a 100644 + || (name != start + 1 && (!is_path || name[-2] != ':')))) + repl = (const char *) -1; + else - #ifndef SHARED - if (l == NULL) - repl = _dl_get_origin (); ++ repl = l->l_origin; ++ + check_for_trusted = (INTUSE(__libc_enable_secure) + && l->l_type == lt_executable); + } @@ -351,9 +348,9 @@ _dl_dst_substitute (struct link_map *l, const char *name, char *result, check_for_trusted = (INTUSE(__libc_enable_secure) && l->l_type == lt_executable); diff --git a/glibc.spec b/glibc.spec index ad2b797..824f9f1 100644 --- a/glibc.spec +++ b/glibc.spec @@ -1,4 +1,4 @@ -%define glibcsrcdir glibc-2.17-830-g19c73bc +%define glibcsrcdir glibc-2.17-906-g8ab0740 %define glibcversion 2.17.90 ### glibc.spec.in follows: %define run_glibc_tests 1 @@ -27,7 +27,7 @@ Summary: The GNU libc libraries Name: glibc Version: %{glibcversion} -Release: 3%{?dist} +Release: 4%{?dist} # 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 @@ -1197,6 +1197,9 @@ rm -f *.filelist* %endif %changelog +* Tue Jul 9 2013 Siddhesh Poyarekar - 2.17.90-4 +- Resync with upstream master. + * Thu Jun 20 2013 Siddhesh Poyarekar - 2.17.90-3 - Resync with upstream master. diff --git a/sources b/sources index 7af5223..542fd62 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -d627fa08bfd7d85b9eb433d97f1a8028 glibc-2.17-830-g19c73bc.tar.gz -db7000215c8d4144ac14d8463ff4c701 glibc-2.17-830-g19c73bc-releng.tar.gz +7ab78f7212d498feb2d84579811e8b3a glibc-2.17-906-g8ab0740.tar.gz +6fa96904270799413fc50a1faa0df8c5 glibc-2.17-906-g8ab0740-releng.tar.gz