Date: Wednesday, February 17, 2016 @ 05:51:29 Author: allan Revision: 259874
upgpkg: glibc 2.22-4 fix CVE-2015-7547 CVE-2015-8776 CVE-2015-8777 CVE-2015-8778 CVE-2015-8779 Modified: glibc/trunk/PKGBUILD glibc/trunk/glibc-2.22-roundup.patch --------------------------+ PKGBUILD | 4 - glibc-2.22-roundup.patch | 158 +-------------------------------------------- 2 files changed, 7 insertions(+), 155 deletions(-) Modified: PKGBUILD =================================================================== --- PKGBUILD 2016-02-17 00:57:50 UTC (rev 259873) +++ PKGBUILD 2016-02-17 04:51:29 UTC (rev 259874) @@ -28,7 +28,7 @@ locale-gen) md5sums=('e51e02bf552a0a1fbbdc948fb2f5e83c' 'SKIP' - '176ca8230b2c1d2e9a904c3527ebed24' + 'd4b9754a2d5e8f113d47c67386f75e7b' 'db053da46e40f25a0fc988936725080b' '07ac979b6ab5eeb778d55f041529d623' '476e9113489f93b348b21e144b6a8fcf') @@ -38,6 +38,8 @@ cd ${srcdir}/glibc-${pkgver} # glibc-2.22..287de30e + # 060f8dbd (and 13ff0739) is reverted as it breaks the testsuite on x86_64 + # TODO: figure out why... patch -p1 -i $srcdir/glibc-2.22-roundup.patch # CVE-2015-7547 - patch from upstream Modified: glibc-2.22-roundup.patch =================================================================== --- glibc-2.22-roundup.patch 2016-02-17 00:57:50 UTC (rev 259873) +++ glibc-2.22-roundup.patch 2016-02-17 04:51:29 UTC (rev 259874) @@ -1,8 +1,8 @@ diff --git a/ChangeLog b/ChangeLog -index cb9124e..58df7c8 100644 +index cb9124e..376355f 100644 --- a/ChangeLog +++ b/ChangeLog -@@ -1,3 +1,317 @@ +@@ -1,3 +1,300 @@ +2016-02-12 Florian Weimer <fwei...@redhat.com> + + * misc/bug18240.c (do_test): Set RLIMIT_AS. @@ -80,23 +80,6 @@ + (__lll_lock_elision): Likewise, and respect a value of + try_tbegin <= 0. + -+2015-12-03 Andrew Senkevich <andrew.senkev...@intel.com> -+ -+ * math/Makefile ($(inst_libdir)/libm.so): Corrected path to -+ libmvec_nonshared.a -+ -+2015-11-27 Andrew Senkevich <andrew.senkev...@intel.com> -+ -+ [BZ #19058] -+ * math/Makefile ($(inst_libdir)/libm.so): Added libmvec_nonshared.a to -+ AS_NEEDED. -+ * sysdeps/x86/fpu/bits/math-vector.h: Removed code with asm aliases -+ workaround. -+ * sysdeps/x86_64/fpu/Makefile (libmvec-support, -+ libmvec-static-only-routines): Added new file. -+ * sysdeps/x86_64/fpu/svml_finite_alias.S: New file. -+ * NEWS: Mention this fix. -+ +2015-11-20 Roland McGrath <rol...@hack.frob.com> + + * sysdeps/nacl/dl-map-segments.h (_dl_map_segments): Use @@ -321,7 +304,7 @@ * version.h (RELEASE): Set to "stable". diff --git a/NEWS b/NEWS -index 4c31de7..d1daf9b 100644 +index 4c31de7..7c4fbc6 100644 --- a/NEWS +++ b/NEWS @@ -5,6 +5,16 @@ See the end for copying conditions. @@ -333,7 +316,7 @@ +* The following bugs are resolved with this release: + + 17905, 18420, 18421, 18480, 18589, 18743, 18778, 18781, 18787, 18796, -+ 18870, 18887, 18921, 18928, 18969, 18985, 19018, 19058, 19174, 19178. ++ 18870, 18887, 18921, 18928, 18969, 18985, 19018, 19174, 19178. + +* The LD_POINTER_GUARD environment variable can no longer be used to + disable the pointer guard feature. It is always enabled. @@ -1266,19 +1249,6 @@ write_locale_data (output_path, LC_COLLATE, "LC_COLLATE", &file); obstack_free (&weightpool, NULL); -diff --git a/math/Makefile b/math/Makefile -index 6388bae..2c9d72d 100644 ---- a/math/Makefile -+++ b/math/Makefile -@@ -98,7 +98,7 @@ $(inst_libdir)/libm.so: $(common-objpfx)format.lds \ - (echo '/* GNU ld script'; echo '*/';\ - cat $<; \ - echo 'GROUP ( $(slibdir)/libm.so$(libm.so-version) ' \ -- 'AS_NEEDED ( $(slibdir)/libmvec.so$(libmvec.so-version) ) )' \ -+ 'AS_NEEDED ( $(libdir)/libmvec_nonshared.a $(slibdir)/libmvec.so$(libmvec.so-version) ) )' \ - ) > $@ - endif - diff --git a/misc/Makefile b/misc/Makefile index aecb0da..12055ce 100644 --- a/misc/Makefile @@ -2645,126 +2615,6 @@ use_lock: return LLL_LOCK ((*lock), pshared); } -diff --git a/sysdeps/x86/fpu/bits/math-vector.h b/sysdeps/x86/fpu/bits/math-vector.h -index f9e798b..f3bfb86 100644 ---- a/sysdeps/x86/fpu/bits/math-vector.h -+++ b/sysdeps/x86/fpu/bits/math-vector.h -@@ -53,34 +53,5 @@ - # undef __DECL_SIMD_powf - # define __DECL_SIMD_powf __DECL_SIMD_x86_64 - --/* Workaround to exclude unnecessary symbol aliases in libmvec -- while GCC creates the vector names based on scalar asm name. -- Corresponding discussion started at -- <https://gcc.gnu.org/ml/gcc/2015-06/msg00173.html>. */ --__asm__ ("_ZGVbN2v___log_finite = _ZGVbN2v_log"); --__asm__ ("_ZGVcN4v___log_finite = _ZGVcN4v_log"); --__asm__ ("_ZGVdN4v___log_finite = _ZGVdN4v_log"); --__asm__ ("_ZGVeN8v___log_finite = _ZGVeN8v_log"); --__asm__ ("_ZGVbN4v___logf_finite = _ZGVbN4v_logf"); --__asm__ ("_ZGVcN8v___logf_finite = _ZGVcN8v_logf"); --__asm__ ("_ZGVdN8v___logf_finite = _ZGVdN8v_logf"); --__asm__ ("_ZGVeN16v___logf_finite = _ZGVeN16v_logf"); --__asm__ ("_ZGVbN2v___exp_finite = _ZGVbN2v_exp"); --__asm__ ("_ZGVcN4v___exp_finite = _ZGVcN4v_exp"); --__asm__ ("_ZGVdN4v___exp_finite = _ZGVdN4v_exp"); --__asm__ ("_ZGVeN8v___exp_finite = _ZGVeN8v_exp"); --__asm__ ("_ZGVbN4v___expf_finite = _ZGVbN4v_expf"); --__asm__ ("_ZGVcN8v___expf_finite = _ZGVcN8v_expf"); --__asm__ ("_ZGVdN8v___expf_finite = _ZGVdN8v_expf"); --__asm__ ("_ZGVeN16v___expf_finite = _ZGVeN16v_expf"); --__asm__ ("_ZGVbN2vv___pow_finite = _ZGVbN2vv_pow"); --__asm__ ("_ZGVcN4vv___pow_finite = _ZGVcN4vv_pow"); --__asm__ ("_ZGVdN4vv___pow_finite = _ZGVdN4vv_pow"); --__asm__ ("_ZGVeN8vv___pow_finite = _ZGVeN8vv_pow"); --__asm__ ("_ZGVbN4vv___powf_finite = _ZGVbN4vv_powf"); --__asm__ ("_ZGVcN8vv___powf_finite = _ZGVcN8vv_powf"); --__asm__ ("_ZGVdN8vv___powf_finite = _ZGVdN8vv_powf"); --__asm__ ("_ZGVeN16vv___powf_finite = _ZGVeN16vv_powf"); -- - # endif - #endif -diff --git a/sysdeps/x86_64/fpu/Makefile b/sysdeps/x86_64/fpu/Makefile -index 1ebe511..b32b852 100644 ---- a/sysdeps/x86_64/fpu/Makefile -+++ b/sysdeps/x86_64/fpu/Makefile -@@ -20,7 +20,10 @@ libmvec-support += svml_d_cos2_core svml_d_cos4_core_avx \ - svml_d_pow_data svml_s_powf4_core svml_s_powf8_core_avx \ - svml_s_powf8_core svml_s_powf16_core svml_s_powf_data \ - svml_s_sincosf4_core svml_s_sincosf8_core_avx \ -- svml_s_sincosf8_core svml_s_sincosf16_core init-arch -+ svml_s_sincosf8_core svml_s_sincosf16_core init-arch \ -+ svml_finite_alias -+ -+libmvec-static-only-routines = svml_finite_alias - endif - - # Variables for libmvec tests. -diff --git a/sysdeps/x86_64/fpu/svml_finite_alias.S b/sysdeps/x86_64/fpu/svml_finite_alias.S -new file mode 100644 -index 0000000..f8bcfeb ---- /dev/null -+++ b/sysdeps/x86_64/fpu/svml_finite_alias.S -@@ -0,0 +1,59 @@ -+/* These aliases added as workaround to exclude unnecessary symbol -+ aliases in libmvec.so while compiler creates the vector names -+ based on scalar asm name. Corresponding discussion is at -+ <https://gcc.gnu.org/ml/gcc/2015-06/msg00173.html>. -+ Copyright (C) 2015 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 -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, see -+ <http://www.gnu.org/licenses/>. */ -+ -+#include <sysdep.h> -+ -+#define ALIAS_IMPL(alias, target) \ -+ENTRY (alias); \ -+ call target; \ -+ ret; \ -+END (alias) -+ -+ .text -+ALIAS_IMPL (_ZGVbN2v___log_finite, _ZGVbN2v_log) -+ALIAS_IMPL (_ZGVcN4v___log_finite, _ZGVcN4v_log) -+ALIAS_IMPL (_ZGVdN4v___log_finite, _ZGVdN4v_log) -+ALIAS_IMPL (_ZGVeN8v___log_finite, _ZGVeN8v_log) -+ -+ALIAS_IMPL (_ZGVbN4v___logf_finite, _ZGVbN4v_logf) -+ALIAS_IMPL (_ZGVcN8v___logf_finite, _ZGVcN8v_logf) -+ALIAS_IMPL (_ZGVdN8v___logf_finite, _ZGVdN8v_logf) -+ALIAS_IMPL (_ZGVeN16v___logf_finite, _ZGVeN16v_logf) -+ -+ALIAS_IMPL (_ZGVbN2v___exp_finite, _ZGVbN2v_exp) -+ALIAS_IMPL (_ZGVcN4v___exp_finite, _ZGVcN4v_exp) -+ALIAS_IMPL (_ZGVdN4v___exp_finite, _ZGVdN4v_exp) -+ALIAS_IMPL (_ZGVeN8v___exp_finite, _ZGVeN8v_exp) -+ -+ALIAS_IMPL (_ZGVbN4v___expf_finite, _ZGVbN4v_expf) -+ALIAS_IMPL (_ZGVcN8v___expf_finite, _ZGVcN8v_expf) -+ALIAS_IMPL (_ZGVdN8v___expf_finite, _ZGVdN8v_expf) -+ALIAS_IMPL (_ZGVeN16v___expf_finite, _ZGVeN16v_expf) -+ -+ALIAS_IMPL (_ZGVbN2vv___pow_finite, _ZGVbN2vv_pow) -+ALIAS_IMPL (_ZGVcN4vv___pow_finite, _ZGVcN4vv_pow) -+ALIAS_IMPL (_ZGVdN4vv___pow_finite, _ZGVdN4vv_pow) -+ALIAS_IMPL (_ZGVeN8vv___pow_finite, _ZGVeN8vv_pow) -+ -+ALIAS_IMPL (_ZGVbN4vv___powf_finite, _ZGVbN4vv_powf) -+ALIAS_IMPL (_ZGVcN8vv___powf_finite, _ZGVcN8vv_powf) -+ALIAS_IMPL (_ZGVdN8vv___powf_finite, _ZGVdN8vv_powf) -+ALIAS_IMPL (_ZGVeN16vv___powf_finite, _ZGVeN16vv_powf) diff --git a/time/strftime_l.c b/time/strftime_l.c index b48ef34..4eb647c 100644 --- a/time/strftime_l.c