summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDiego Elio Pettenò <flameeyes@gentoo.org>2013-03-03 11:02:36 +0000
committerDiego Elio Pettenò <flameeyes@gentoo.org>2013-03-03 11:02:36 +0000
commit4d10dc08e55c1fbd2abac109340a3eca23b99885 (patch)
tree54ca5a50debd88fe9f9c37d0b18e6f03be176c1f /dev-libs/boost
parentMark s390/sh stable. (diff)
downloadgentoo-2-4d10dc08e55c1fbd2abac109340a3eca23b99885.tar.gz
gentoo-2-4d10dc08e55c1fbd2abac109340a3eca23b99885.tar.bz2
gentoo-2-4d10dc08e55c1fbd2abac109340a3eca23b99885.zip
Apply security patch for bug #455464; add subslot definition; depend on the -r1 version of boost-build which might fix some build failures.
(Portage version: 2.2.0_alpha163/cvs/Linux x86_64, signed Manifest commit with key 1CD13C8AD4301342)
Diffstat (limited to 'dev-libs/boost')
-rw-r--r--dev-libs/boost/ChangeLog9
-rw-r--r--dev-libs/boost/boost-1.52.0-r6.ebuild (renamed from dev-libs/boost/boost-1.52.0-r5.ebuild)11
-rw-r--r--dev-libs/boost/files/boost-1.52.0-locale-utf.patch52
3 files changed, 66 insertions, 6 deletions
diff --git a/dev-libs/boost/ChangeLog b/dev-libs/boost/ChangeLog
index bc543281335b..8171ebeb115e 100644
--- a/dev-libs/boost/ChangeLog
+++ b/dev-libs/boost/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for dev-libs/boost
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-libs/boost/ChangeLog,v 1.288 2013/02/04 20:19:54 flameeyes Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-libs/boost/ChangeLog,v 1.289 2013/03/03 11:02:36 flameeyes Exp $
+
+*boost-1.52.0-r6 (03 Mar 2013)
+
+ 03 Mar 2013; Diego E. Pettenò <flameeyes@gentoo.org> +boost-1.52.0-r6.ebuild,
+ +files/boost-1.52.0-locale-utf.patch, -boost-1.52.0-r5.ebuild:
+ Apply security patch for bug #455464; add subslot definition; depend on the
+ -r1 version of boost-build which might fix some build failures.
*boost-1.53.0 (04 Feb 2013)
diff --git a/dev-libs/boost/boost-1.52.0-r5.ebuild b/dev-libs/boost/boost-1.52.0-r6.ebuild
index 0f0f40b358d0..b300abdc133a 100644
--- a/dev-libs/boost/boost-1.52.0-r5.ebuild
+++ b/dev-libs/boost/boost-1.52.0-r6.ebuild
@@ -1,6 +1,6 @@
-# Copyright 1999-2012 Gentoo Foundation
+# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/dev-libs/boost/boost-1.52.0-r5.ebuild,v 1.1 2012/12/15 14:45:27 mgorny Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-libs/boost/boost-1.52.0-r6.ebuild,v 1.1 2013/03/03 11:02:36 flameeyes Exp $
EAPI="5"
PYTHON_COMPAT=( python{2_5,2_6,2_7,3_1,3_2,3_3} )
@@ -14,8 +14,8 @@ HOMEPAGE="http://www.boost.org/"
SRC_URI="mirror://sourceforge/boost/${MY_P}.tar.bz2"
LICENSE="Boost-1.0"
-SLOT=0
MAJOR_V="$(get_version_component_range 1-2)"
+SLOT="0/${MAJOR_V}"
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
IUSE="debug doc icu +nls mpi python static-libs +threads tools"
@@ -26,7 +26,7 @@ RDEPEND="icu? ( >=dev-libs/icu-3.6:= )
sys-libs/zlib
!app-admin/eselect-boost"
DEPEND="${RDEPEND}
- =dev-util/boost-build-${MAJOR_V}*"
+ =dev-util/boost-build-1.52.0-r1"
S=${WORKDIR}/${MY_P}
@@ -69,7 +69,8 @@ src_prepare() {
"${FILESDIR}/${PN}-1.48.0-python_linking.patch" \
"${FILESDIR}/${PN}-1.48.0-disable_icu_rpath.patch" \
"${FILESDIR}/remove-toolset-1.48.0.patch" \
- "${FILESDIR}/${PN}-1.52.0-tuple.patch"
+ "${FILESDIR}/${PN}-1.52.0-tuple.patch" \
+ "${FILESDIR}/${P}-locale-utf.patch"
# Avoid a patch for now
for file in libs/context/src/asm/*.S; do
diff --git a/dev-libs/boost/files/boost-1.52.0-locale-utf.patch b/dev-libs/boost/files/boost-1.52.0-locale-utf.patch
new file mode 100644
index 000000000000..7ef51e94797b
--- /dev/null
+++ b/dev-libs/boost/files/boost-1.52.0-locale-utf.patch
@@ -0,0 +1,52 @@
+Index: boost/locale/utf.hpp
+===================================================================
+--- boost/locale/utf.hpp (revision 81589)
++++ boost/locale/utf.hpp (revision 81590)
+@@ -219,16 +219,22 @@
+ if(BOOST_LOCALE_UNLIKELY(p==e))
+ return incomplete;
+ tmp = *p++;
++ if (!is_trail(tmp))
++ return illegal;
+ c = (c << 6) | ( tmp & 0x3F);
+ case 2:
+ if(BOOST_LOCALE_UNLIKELY(p==e))
+ return incomplete;
+ tmp = *p++;
++ if (!is_trail(tmp))
++ return illegal;
+ c = (c << 6) | ( tmp & 0x3F);
+ case 1:
+ if(BOOST_LOCALE_UNLIKELY(p==e))
+ return incomplete;
+ tmp = *p++;
++ if (!is_trail(tmp))
++ return illegal;
+ c = (c << 6) | ( tmp & 0x3F);
+ }
+
+Index: libs/locale/test/test_codepage_converter.cpp
+===================================================================
+--- libs/locale/test/test_codepage_converter.cpp (revision 81589)
++++ libs/locale/test/test_codepage_converter.cpp (revision 81590)
+@@ -140,6 +140,20 @@
+ TEST_TO("\xf8\x90\x80\x80\x80",illegal); // 400 0000
+ TEST_TO("\xfd\xbf\xbf\xbf\xbf\xbf",illegal); // 7fff ffff
+
++ std::cout << "-- Invalid trail" << std::endl;
++ TEST_TO("\xC2\x7F",illegal);
++ TEST_TO("\xdf\x7F",illegal);
++ TEST_TO("\xe0\x7F\x80",illegal);
++ TEST_TO("\xef\xbf\x7F",illegal);
++ TEST_TO("\xe0\x7F\x80",illegal);
++ TEST_TO("\xef\xbf\x7F",illegal);
++ TEST_TO("\xf0\x7F\x80\x80",illegal);
++ TEST_TO("\xf4\x7f\xbf\xbf",illegal);
++ TEST_TO("\xf0\x90\x7F\x80",illegal);
++ TEST_TO("\xf4\x8f\x7F\xbf",illegal);
++ TEST_TO("\xf0\x90\x80\x7F",illegal);
++ TEST_TO("\xf4\x8f\xbf\x7F",illegal);
++
+ std::cout << "-- Invalid length" << std::endl;
+
+ /// Test that this actually works