summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2011-12-12 17:47:28 +0000
committerMike Frysinger <vapier@gentoo.org>2011-12-12 17:47:28 +0000
commitf9dfbb9fe902b73f458603e556ddbdf8daa5739e (patch)
treebb91b16980ee4e2b5544724a2711282be7979617
parentRemove miss-named beta0. Add beta1 with better name (presented as downgrade). (diff)
downloadhistorical-f9dfbb9fe902b73f458603e556ddbdf8daa5739e.tar.gz
historical-f9dfbb9fe902b73f458603e556ddbdf8daa5739e.tar.bz2
historical-f9dfbb9fe902b73f458603e556ddbdf8daa5739e.zip
Run scanelf on systems when upgrading to look for old __guard symbols #394453 by morlix.
Package-Manager: portage-2.2.0_alpha79/cvs/Linux x86_64
-rw-r--r--sys-libs/glibc/ChangeLog7
-rw-r--r--sys-libs/glibc/Manifest14
-rw-r--r--sys-libs/glibc/files/eblits/pkg_setup.eblit22
-rw-r--r--sys-libs/glibc/files/eblits/src_compile.eblit6
-rw-r--r--sys-libs/glibc/files/eblits/src_unpack.eblit18
5 files changed, 37 insertions, 30 deletions
diff --git a/sys-libs/glibc/ChangeLog b/sys-libs/glibc/ChangeLog
index aec8fa556231..a1a2e06dd5f9 100644
--- a/sys-libs/glibc/ChangeLog
+++ b/sys-libs/glibc/ChangeLog
@@ -1,6 +1,11 @@
# ChangeLog for sys-libs/glibc
# Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sys-libs/glibc/ChangeLog,v 1.805 2011/12/12 17:33:10 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-libs/glibc/ChangeLog,v 1.806 2011/12/12 17:47:28 vapier Exp $
+
+ 12 Dec 2011; Mike Frysinger <vapier@gentoo.org> files/eblits/pkg_setup.eblit,
+ files/eblits/src_compile.eblit, files/eblits/src_unpack.eblit:
+ Run scanelf on systems when upgrading to look for old __guard symbols #394453
+ by morlix.
12 Dec 2011; Mike Frysinger <vapier@gentoo.org>
files/eblits/src_compile.eblit, files/eblits/src_install.eblit:
diff --git a/sys-libs/glibc/Manifest b/sys-libs/glibc/Manifest
index 618965c3722b..85efd079f9bb 100644
--- a/sys-libs/glibc/Manifest
+++ b/sys-libs/glibc/Manifest
@@ -18,11 +18,11 @@ AUX 2.7/glibc-2.7-hardened-inittls-nosysenter.patch 8755 RMD160 b674894f3b16f631
AUX eblits/common.eblit 9323 RMD160 aa42c1ca5b73b68bb6d022355dfa7e149091f23c SHA1 1849da38c293bcfddc0b6446d4e1862d28f0fbe5 SHA256 d3841f2d4d9065754e57b5d9143c54eb278daabde81cf0d27179e281ddd0875a
AUX eblits/pkg_postinst.eblit 1159 RMD160 4b99846819bf0471d1104a8a17dd260796644f9d SHA1 4a2980fede3edebc7960d40db7cf935c7c854859 SHA256 76c403cf5c77a3a3bb7441566335f0c8da2584eaa21f05ab400e7bb00f9db810
AUX eblits/pkg_preinst.eblit 3469 RMD160 a8f0831802ea5b5bec02b6379f08cd5f4f0ad27a SHA1 31a9a0815f11bd186c27d3cc44a394e4aee754be SHA256 7f947a83488dccd4c5169508d7c125d09fdd30ddd07d98b528ad12d83b9e2730
-AUX eblits/pkg_setup.eblit 3146 RMD160 f0575822d5364b5167c17ea7b0aabd821b61fb19 SHA1 e5e55694c18a4c7b8df2e76586866894b018f04e SHA256 c4a59e35b3c5847fa24cc35fb4af4c190a057587453ac8c463244189ff627d74
-AUX eblits/src_compile.eblit 5832 RMD160 9d5cbc2b1d202d6dd184a5d232ccd69e6175e634 SHA1 dbd1263d031917cfb807d61df81726f84cc2f261 SHA256 9bd476aef4d89a991d36755e5599c833eeeada6994339aa5bc31519398d29c10
+AUX eblits/pkg_setup.eblit 3748 RMD160 69f64d51784fa1a5d6e14e2d10cb7f5a427ce855 SHA1 218831db1330397f353fc6ff5e1e7f708a6b077e SHA256 7d0f68256169a0526f6db3a5173339c6792f154120f05363fdda11a6288eb9bb
+AUX eblits/src_compile.eblit 5777 RMD160 589394dbad302c02ba2ca75730938a9d58986980 SHA1 1b827f4f649924558a7c115614ffb20f841ffef7 SHA256 4fec8eb713125dd89c5d2e19b2499dfcca8796943fb437e419e417929c6d92af
AUX eblits/src_install.eblit 7530 RMD160 40226c9ef9975b7f055326b660338d6cf288082c SHA1 a4ff814e0d6ca59e6ffbff7626c1230958f70370 SHA256 4b1899e2669657ace7fe225b9f737891ae57b455ea5b88d7d844a7858110eeea
AUX eblits/src_test.eblit 1172 RMD160 a70e31e655cd3e306af6a498002de85b72258566 SHA1 4aec15e6ab67279258fd23400701fd38c106a38b SHA256 e5a390761b7ec613460b8da26df3ffe2a137217261dd9f87f2b78c3fa2a12727
-AUX eblits/src_unpack.eblit 5848 RMD160 8012ba4a31e689080ec2d70156c503b0c36e3119 SHA1 5aab07c312c3ab0624ead0e0a7f7d5cecfe1bf00 SHA256 19f73007557718580860a6e1b7613b4a69a4a639f17a9d3cb9ca2aba9576ccca
+AUX eblits/src_unpack.eblit 5286 RMD160 6bb0879a4b2eb29872c4099e4d94b64dc7911741 SHA1 288d73641a315537b83d00524431d4cd2c5fb3f0 SHA256 7daf6650a96699e52b48b207a1bcdfa93658871d11ee634a2d52764450978d2f
AUX nscd 1621 RMD160 f6d20c4c3814f70d7741f3fa2e0b53ba32c37960 SHA1 5751fe798024c2021b7b3ed3e798618e2a38244a SHA256 6165db3a2fcb251d4f3655c0461e018ce9c92a37f7f22a8fd2b75178b5435bc8
AUX nsswitch.conf 503 RMD160 f375f92f6b41029c93382c39cef896261b140cfc SHA1 42f7f5cc3de75c69bf60d806ac8490106ea63326 SHA256 6c38b8642d5da884327ad678d0351d57be3621562253bd9711394bad87e45e2d
DIST glibc-2.10.1-patches-7.tar.bz2 113612 RMD160 333b6e15132dd72f09369aea52e88156aecfda5a SHA1 b8b42bd16f99b43d20a08790b9bffac4dfd57060 SHA256 6c94493e08c13072c94c967f55b659e6c950ec470c9677c43cfab10e24a88370
@@ -62,12 +62,12 @@ EBUILD glibc-2.14.1.ebuild 8790 RMD160 f1e9c7f95d2486e79303e7d94a259c224344c171
EBUILD glibc-2.14.ebuild 8789 RMD160 2526d5682ba5214e88ac1daa1afa46607f53093a SHA1 3cb67afb2d3606f78047ce96c014fd4a7286018a SHA256 1df3c918ad3a947b54bbd8e6b6e6eb441705d4cb9c561228096820dadc045503
EBUILD glibc-2.9_p20081201-r3.ebuild 7753 RMD160 8d14a32be1c680e21128552fff3e7299710b0255 SHA1 92f5182dce11c5a77e91ebd9129c2c6ff6938974 SHA256 b90aa298fd49569090f711b2bd9368a66c73cb6c37e85525d1d929ef70e09a5b
EBUILD glibc-9999.ebuild 8789 RMD160 cb7c0aa7866c031533846c94dd632d26cde8b064 SHA1 e3619da20d49aa6b358b6c95b83c94bf34e5bfe4 SHA256 9e7a7444b0aeb1cd27e5689a94a029c637627971f4fd1fb2e4361a0e7b3d6fc9
-MISC ChangeLog 143628 RMD160 d2effa8e8bb65a2464016a344f19251aa4696f84 SHA1 b78114e77ae9bdf031ab800c25a0c81ad09fa6a1 SHA256 aeffe6505e9326133a0bbedf1937b0b124ccfa7fd10186082b9d0bc476311566
+MISC ChangeLog 143867 RMD160 f2bfd068c6e18797717c1e1d5c654ea6b42e3dda SHA1 7da31371bd41cd44b7b404166117a9c34c132b37 SHA256 f5cfab0947f9e8a483a65c93d6afe0dc8124dcb6f423521a680bfc4aa2a94a43
MISC metadata.xml 423 RMD160 cf6f12db580ed1cff7cf7287723daece896268ae SHA1 ecd822cb67d353dea55f6a07d0e14a4b3a3644a7 SHA256 9e9a0143eff95971cf35957f2334ba791557e6408fff8784188fdba70d48f4b5
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.18 (GNU/Linux)
-iF4EAREIAAYFAk7mOt4ACgkQaC/OocHi7JbGYAEAmQrDsAui0IDUKz7i1vFbMqFB
-UukKY7LbExo2EDvGAi0BAJ883QBW62Ed4b4uez2ZdjFJCAqsJhIbs4x7es++/0Il
-=JNmX
+iF4EAREIAAYFAk7mPjgACgkQaC/OocHi7Ja2BAD/U/mJjKXgfSySkhAV9UZZEe7x
+2Pi9AFbfLNvipuUt124A/RMiJgf5wlj5agZZUuTgkIqs+uHYMlEUn9zqlT1+oSYw
+=/y2N
-----END PGP SIGNATURE-----
diff --git a/sys-libs/glibc/files/eblits/pkg_setup.eblit b/sys-libs/glibc/files/eblits/pkg_setup.eblit
index 806ad86de892..31a38f437716 100644
--- a/sys-libs/glibc/files/eblits/pkg_setup.eblit
+++ b/sys-libs/glibc/files/eblits/pkg_setup.eblit
@@ -1,6 +1,6 @@
# Copyright 1999-2011 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sys-libs/glibc/files/eblits/pkg_setup.eblit,v 1.7 2011/11/16 16:07:46 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-libs/glibc/files/eblits/pkg_setup.eblit,v 1.8 2011/12/12 17:47:28 vapier Exp $
glibc_compile_test() {
local ret save_cflags=${CFLAGS}
@@ -95,4 +95,24 @@ eblit-glibc-pkg_setup() {
use hardened && ! gcc-specs-pie && \
ewarn "PIE hardening not applied, as your compiler doesn't default to PIE"
+
+ # Make sure host system is up to date #394453
+ if has_version '<sys-libs/glibc-2.15' ; then
+ ebegin "Scanning system for __guard to see if you need to rebuild first ..."
+ local files=$(
+ scanelf -qys__guard -F'#s%F' \
+ "${ROOT}"/*bin/ \
+ "${ROOT}"/lib* \
+ "${ROOT}"/usr/*bin/ \
+ "${ROOT}"/usr/lib* | \
+ grep -v '^/lib.*/libc-2.*.so$'
+ )
+ [[ -z ${files} ]]
+ if ! eend $? ; then
+ eerror "Your system still has old SSP __guard symbols. You need to"
+ eerror "rebuild all the packages that provide these files first:"
+ eerror "${files}"
+ die "old __guard detected"
+ fi
+ fi
}
diff --git a/sys-libs/glibc/files/eblits/src_compile.eblit b/sys-libs/glibc/files/eblits/src_compile.eblit
index b11639148c72..6a77650fcf41 100644
--- a/sys-libs/glibc/files/eblits/src_compile.eblit
+++ b/sys-libs/glibc/files/eblits/src_compile.eblit
@@ -1,6 +1,6 @@
# Copyright 1999-2011 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sys-libs/glibc/files/eblits/src_compile.eblit,v 1.20 2011/12/12 17:33:10 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-libs/glibc/files/eblits/src_compile.eblit,v 1.21 2011/12/12 17:47:28 vapier Exp $
glibc_do_configure() {
local myconf
@@ -21,10 +21,8 @@ glibc_do_configure() {
use nls || myconf="${myconf} --disable-nls"
myconf="${myconf} $(use_enable hardened stackguard-randomization)"
- if [[ $(<"${T}"/.ssp.compat) == "yes" ]] ; then
+ if has_version '<sys-libs/glibc-2.13' ; then
myconf="${myconf} --enable-old-ssp-compat"
- else
- myconf="${myconf} --disable-old-ssp-compat"
fi
use glibc-omitfp && myconf="${myconf} --enable-omitfp"
diff --git a/sys-libs/glibc/files/eblits/src_unpack.eblit b/sys-libs/glibc/files/eblits/src_unpack.eblit
index c22c25ca7fa3..cc683cd23031 100644
--- a/sys-libs/glibc/files/eblits/src_unpack.eblit
+++ b/sys-libs/glibc/files/eblits/src_unpack.eblit
@@ -1,6 +1,6 @@
# Copyright 1999-2011 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sys-libs/glibc/files/eblits/src_unpack.eblit,v 1.13 2011/08/23 18:37:57 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-libs/glibc/files/eblits/src_unpack.eblit,v 1.14 2011/12/12 17:47:28 vapier Exp $
int_to_KV() {
local version=$1 major minor micro
@@ -163,22 +163,6 @@ eblit-glibc-src_unpack() {
toolchain-glibc_src_unpack
- # Backwards SSP support
- cd "${S}"
-# For now, we force everyone to have the extra symbols
-# einfon "Scanning system for __guard to see if we need SSP compat ... "
-# if [[ -n $(scanelf -qyls__guard -F'#s%F' | grep -v '^/lib.*/libc-2.*.so$') ]] ; then
- echo "yes" > "${T}"/.ssp.compat
-# else
-# # ok, a quick scan didnt find it, so lets do a deep scan ...
-# if [[ -n $(scanelf -qyRlps__guard -F'#s%F' | grep -v '^/lib.*/libc-2.*.so$') ]] ; then
-# echo "yes" > "${T}"/.ssp.compat
-# else
-# echo "no" > "${T}"/.ssp.compat
-# fi
-# fi
-# cat "${T}"/.ssp.compat
-
# Glibc is stupid sometimes, and doesn't realize that with a
# static C-Only gcc, -lgcc_eh doesn't exist.
# http://sources.redhat.com/ml/libc-alpha/2003-09/msg00100.html