summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlon Bar-Lev <alonbl@gentoo.org>2015-07-02 19:13:55 +0000
committerAlon Bar-Lev <alonbl@gentoo.org>2015-07-02 19:13:55 +0000
commit5e6251a4fb17fc493aeb360c8038723f60f8f8d8 (patch)
treee32caaf20e475c05ea609b12213a40cc43c3901f /dev-libs/crypto++
parentrevump to fix gtk-doc QA issue (diff)
downloadhistorical-5e6251a4fb17fc493aeb360c8038723f60f8f8d8.tar.gz
historical-5e6251a4fb17fc493aeb360c8038723f60f8f8d8.tar.bz2
historical-5e6251a4fb17fc493aeb360c8038723f60f8f8d8.zip
Fix cve-2015-2141, bug#553808
Package-Manager: portage-2.2.18/cvs/Linux x86_64 Manifest-Sign-Key: 0xBF20DC51
Diffstat (limited to 'dev-libs/crypto++')
-rw-r--r--dev-libs/crypto++/ChangeLog8
-rw-r--r--dev-libs/crypto++/Manifest26
-rw-r--r--dev-libs/crypto++/crypto++-5.6.2-r2.ebuild71
-rw-r--r--dev-libs/crypto++/files/crypto++-5.6.2-cve-2015-2141.patch32
4 files changed, 118 insertions, 19 deletions
diff --git a/dev-libs/crypto++/ChangeLog b/dev-libs/crypto++/ChangeLog
index 8882cbe94ebb..c70dbef4f976 100644
--- a/dev-libs/crypto++/ChangeLog
+++ b/dev-libs/crypto++/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for dev-libs/crypto++
# Copyright 1999-2015 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-libs/crypto++/ChangeLog,v 1.98 2015/06/09 14:14:11 jlec Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-libs/crypto++/ChangeLog,v 1.99 2015/07/02 19:13:48 alonbl Exp $
+
+*crypto++-5.6.2-r2 (02 Jul 2015)
+
+ 02 Jul 2015; Alon Bar-Lev <alonbl@gentoo.org> +crypto++-5.6.2-r2.ebuild,
+ +files/crypto++-5.6.2-cve-2015-2141.patch:
+ Fix cve-2015-2141, bug#553808
09 Jun 2015; Justin Lecher <jlec@gentoo.org> metadata.xml:
Updating remote-id in metadata.xml
diff --git a/dev-libs/crypto++/Manifest b/dev-libs/crypto++/Manifest
index 6175f1da0ef9..0018ded1b89d 100644
--- a/dev-libs/crypto++/Manifest
+++ b/dev-libs/crypto++/Manifest
@@ -1,33 +1,23 @@
-----BEGIN PGP SIGNED MESSAGE-----
-Hash: SHA512
+Hash: SHA256
AUX crypto++-5.6.1-fix_build_system.patch 5008 SHA256 cc2c823046f38c154f7cc6899ff2cb94bb378bfbbb534662246d378e751f0480 SHA512 c457b6bb7366915087e4af85b57cc8482f65363d45f665804cdec9072846b7c864f7def5851d46a892cd05365984910bee8516cd07cfdf0b7b3b73973328abef WHIRLPOOL 3b1a7a105df55246a3532db2812dc89229f2ea564bcaaab254226299402e2745cf298e202d1ed2e8d1729e06f8705c024add05c6d2258c81d2c2e0c2f5efc510
AUX crypto++-5.6.1-gcc-4.7.patch 4442 SHA256 e4b13387ad5f0a2089565709b5fbf95790f50c2e710af153b94faa15dc351ff1 SHA512 1f5b80964a4dea1d5f37ab893170856ba0b78adea45cc149241cfbb6545999c495169724e3d8521457ca718623157845c2eba39b53bbb37e23a8e0b05f8e13d7 WHIRLPOOL 9a96a92c17188d9986b3c40d738b1bb95af21cc8a3fa08556c073ca3a0dfa8c169bbcd39dc605490ea8c88771ee58ef859d9c623fcb99127d5d26e2ad86075c5
AUX crypto++-5.6.1-r3-fix_build_system.patch 5684 SHA256 b66efd9b50efc66afa06e19601646fd6e4f93f1bc8424192efee3d6e5c8cf514 SHA512 4c60a46c2df6661abcb3bfb83d53a509a7cc0f77c24983f386ea2df1ffd95ee3ecbbc1291ab953553cdab95bec801641e934b5efea8b785869df41bd83067c76 WHIRLPOOL 3f654ca98d5ec603820a1369f718131728cf38f32b19c3e7c7c59248cb37490d58ccd159de5dac0b71985f0bdcfd08a1737535d781f142985b53f57718e5c9a4
AUX crypto++-5.6.1-rijndael.patch 578 SHA256 8d5c406987a1a98c3e2aa5c1046d86bc3ff2c7af6c487b70b8b0fa9cb938ca0c SHA512 02ba1c83a19865c74faa62046b8199138b951b59a79aaae036268fff64ae0d6ba7bc98ab791c17a446d7aaecc526c6b603b1b9d0d513ce349d5a2ff4032d3401 WHIRLPOOL 4aa8bfd92090a7eb75a686bd6ae42bdc5cb5bc620bfb3358cb51ea1a0ad581a9030084512b85808c81361822bd5bcdc265b7d39db0ee8f4d52467da7ffff45e9
AUX crypto++-5.6.1-sunos.patch 546 SHA256 fb0bc4e48dc55100dd0a454b86a98c949faa79d77967840a9afa0e0ac1ac531c SHA512 9682e7aaf140c3587dcb0db5ed0bb906e6ccf4f343c17979ffcf4099a5f600a31510e86c1efcf392c8f4cdda0ed6abab5ba87a124b83b26f7ab1b2cbc10e2acd WHIRLPOOL cceec55658ac7436bbb4a8af712044d83336fde54637114d8ff1579af485f0d8e50c8d737028dc02195534b511eda2cca02d8b366877e6ef8dd541b605925154
+AUX crypto++-5.6.2-cve-2015-2141.patch 1131 SHA256 611980b01fd4292bc40b929e62a0cdecf1ea87c8b4639bca7c286b83c8c948fc SHA512 4407833fbfb44c3571edccd916323a97427ee3c0f37b49d5a6851a196e6913954801cb9df3b01b956e8d990904fb710a0a57918c44596e8218b4c08b1b729bf1 WHIRLPOOL 5380572f224181f1da27a5f71448be7169be0c78c2f04a219f7fb3fca95446b26d27c62d03b2270f915f24ec1243b6ae9f761c9345a9aec7a7597ae670ce4697
AUX crypto++-5.6.2-make.patch 5757 SHA256 1c74320e5111e688e1623b3672d248339c230e240b77a6ff71ef1d07dc005d7a SHA512 c237010ebea7efb9602aa2eaa2d81a3f87a51b60530229458ca3af719b4ee6652a9622672a409a9f5deb6af0adeb4d184c9e5b37bcd89d904cff052d466bb6c6 WHIRLPOOL 55a0b8dd74b3306b1a89df99036388e640824783df7bc67701cabfa7e2abe5946e4553731fcba7503155d8873055a82086c7d69a858a61ff8d9842b043408a6a
AUX crypto++-5.6.2-r1-make.patch 5600 SHA256 7fd192a4acebf2c8706b322a7682e283a8338819ea10aa3405b6bb8b08406f36 SHA512 cb95468f5b1f61bfffa96519cc98038c9d2f39b3aae42734d92d082d2283b5fdb0841d0873d7d6bb9177120982fbaf70a6973f3f40de31aab070827d708d348d WHIRLPOOL 5b7353f38575aea281c0515e06bf291a05c325336b3f3559007993f5a32df297afccfb39b1fe4a15722c5cf54fc7c337a0cf2de470cf2d08d81e9a946b341783
DIST cryptopp562.zip 1137964 SHA256 5cbfd2fcb4a6b3aab35902e2e0f3b59d9171fee12b3fc2b363e1801dfec53574 SHA512 016ca7ebad1091d67ad0bc5ccb7549d96d4af6b563d9d5a612cae27b3d1a3514c41b954e319fed91c820e8c701e3aa43da186e0864bf959ce4afd1539248ebbe WHIRLPOOL e31203da48a31b09e6ea48a75aa64fe5fd27fd370a1a609c4387526f09daab7582716563b688c0c81a8c3b200b8ffa7bdb2b981e5911640e5f1c172d6027f6ac
EBUILD crypto++-5.6.2-r1.ebuild 1889 SHA256 0935bd9658504442cd9fa444ef1a22556a5d2cf786e6780c0b09f58538c7fe1f SHA512 c2326440b698575540eb6ac32b9eed8ba972943584b103ce1636ada6ee6aaf47fba2949457dd1790d02bbaeb2952c8bb6d742686cfcb0d9bb13bb4f9dc9debe5 WHIRLPOOL 662d7251e265171eaaa0555e2456a7bc13e024dcff3620529c4589af3297011a14014a7895eca6fa1c6112529b04953baf7bcc055eb333ac4651920a90791a74
-MISC ChangeLog 14287 SHA256 6f2d2c25de84df42680f68482288bb81b4acd4d3952e7fed73d0c0411966ad99 SHA512 6198b375d43bd2bd69898b8e8602d2955655a3471c70522d143f326b874a08f5a68c1045eb3d90d996cf09058d0f290475fa5aaa0902373ad0a6390128c21f6d WHIRLPOOL 869e6c148217df06f32a7fe819a96e5b0aff7caa0cf47c4e78a5b1d7e1b2e8c9de0370247965f00fed990a566997e07b13199d9c8d334cb23ff3c27e331157be
+EBUILD crypto++-5.6.2-r2.ebuild 1947 SHA256 c8e8269ceb700cff4d99375774dc86c2195928c55b969b731237a88cd52386a8 SHA512 1d6a8727cbfd11f0ba8c1798a63beacc216d34953280c101b4af1dbc7ab39025e94eb2ffab9a45e99d3eb7e38784ce4d800300d5e61d55aaf4a1ce0f9ce18dbe WHIRLPOOL bf9e8a26ef13261641855f9bacdcd089a20b8c98a86362e3a9723ac4e9c3c32569f104657bad4880bb770c8fb31671cbd86d017e53bbd1b9c2ec85e52768becb
+MISC ChangeLog 14476 SHA256 43e22ebd591e6d95b0c64968fe7666295f2293cb043b106e62a98975dd453fdd SHA512 87c9dce0c648d3779af5f4e688b102bb628bd3c67643a6d5060769d80410c2253b62b2fe67b7b42cafcc0d3ccc7a168767e8299603315c240edbea4668e66597 WHIRLPOOL a20d754987baa9cbe99f52cfede560a571f3808be8e26a12a6bc9728219e084f3ae329a0c71b3bc17a43cb609811cc82d206532afefd2b9eec105b4b1ed58079
MISC metadata.xml 238 SHA256 6016bce582e1c161d797f47c30e8eff1874b020bb6fee9e490d04e1d99311194 SHA512 35c41d4b5cc45959f8f24254a34dd72298cd23f834e5b15861f1c990510e847e7c962bc2716cd849d318a4afcb79d967eb1b877e7eeac17c9a9eeed02ae9e89e WHIRLPOOL a16d6d589a1c3ca2311c570993ff64e6919c7ec60877f91ad0e1cf31c6e8c65128120f454d6b54728db5bd8c7ec17df5e130378bbcbcbdefa2c2b20326fb4e1e
-----BEGIN PGP SIGNATURE-----
-Version: GnuPG v2.0
+Version: GnuPG v2
-iQJ8BAEBCgBmBQJVdvS0XxSAAAAAAC4AKGlzc3Vlci1mcHJAbm90YXRpb25zLm9w
-ZW5wZ3AuZmlmdGhob3JzZW1hbi5uZXQ0QUU0N0I4NzFERUI0MTJFN0EyODE0NUFF
-OTQwMkE3OUIwMzUyOUEyAAoJEOlAKnmwNSmiO9UP+gOx5u3BBmCcLYN9045wg7kG
-hayvPE8JQWifwAwCBpJQuiJh0p8cIRDV+ThgqyrfqqEPZZhwdd6Ar64DrT2yE6SV
-1k2qcfKvt15SUdkAIzAVKCJGUE+mbQBNfvE6mRNd+EOSR1/34Bv9pOg6/whW2fel
-pGkZzqX8+P5XWGXBOUEC7VraKyk44fIYZVwezf5jjBoZwpvZ1sN5BHR5xSZLq7aL
-kgvTvfxZIQ7cMYP+PCmBz2U7bHw57ZGfktLw2kY7xiJXkuR1gA4QvWNZEKHdshlR
-r+H8k3DeNkxUuIHVEkSKoso2MBaSdCnJznLaztLe85+CSmzxyrNk/faNK1xZxR92
-BbSgSkYidxYNLqOg53HwLTr18GLoCkt2iPZQfuLcGfzCjgwZ/rHNznpbWMOuedHq
-v1bRIh86PvCYmBHyRGLWlrHKgmFuG4L6LsLzlkoe+Y8CdUAsxdOPIHetHiZiyiPk
-Rexp5/ul+ovhSh3m56zBRfQd0F+y2u4uSDc7ZNsjg1ZIisRIoWUfp1XAq/49LLHC
-jblhlBurrOe+SuxQZM4/3wenMlRtSFmOuLrtqsXDXRPVuVlfdndyg4Wxv/Np1c1w
-DexobQu/n+/7IMbJ6jIecpJrumeWWA0zNirdKOJT1QQAAuP6B3CVHMNOOpWvfRIw
-PkLmvCtEuSe7mv7NVGXR
-=atzv
+iF4EAREIAAYFAlWVjW8ACgkQXYk9GL8g3FFLoQD/TdET0O7825v0/ajMbKeTcdG6
+svwvAgixOi/vwQWLg5cA/Rzr5ZC1JfCHzROzu0FDxZzib/JYiAYTEL0Qxr9pdmmi
+=b0gW
-----END PGP SIGNATURE-----
diff --git a/dev-libs/crypto++/crypto++-5.6.2-r2.ebuild b/dev-libs/crypto++/crypto++-5.6.2-r2.ebuild
new file mode 100644
index 000000000000..c66b23a1690e
--- /dev/null
+++ b/dev-libs/crypto++/crypto++-5.6.2-r2.ebuild
@@ -0,0 +1,71 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-libs/crypto++/crypto++-5.6.2-r2.ebuild,v 1.1 2015/07/02 19:13:48 alonbl Exp $
+
+EAPI=5
+
+inherit eutils flag-o-matic multilib toolchain-funcs autotools
+
+DESCRIPTION="C++ class library of cryptographic schemes"
+HOMEPAGE="http://cryptopp.com"
+SRC_URI="mirror://sourceforge/cryptopp/cryptopp${PV//.}.zip"
+
+LICENSE="Boost-1.0"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ppc ~ppc64 ~sparc ~x86 ~x64-macos"
+IUSE="static-libs"
+
+DEPEND="app-arch/unzip
+ sys-devel/libtool"
+
+S="${WORKDIR}"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-r1-make.patch
+ epatch "${FILESDIR}"/${P}-cve-2015-2141.patch
+
+ # Generate our own libtool script for building.
+ cat <<-EOF > configure.ac
+ AC_INIT(lt, 0)
+ AM_INIT_AUTOMAKE
+ AC_PROG_CXX
+ LT_INIT
+ AC_CONFIG_FILES(Makefile)
+ AC_OUTPUT
+ EOF
+ touch NEWS README AUTHORS ChangeLog Makefile.am
+ eautoreconf
+}
+
+src_configure() {
+ econf $(use_enable static-libs static)
+}
+
+src_compile() {
+ # higher optimizations cause problems
+ replace-flags -O? -O1
+ filter-flags -fomit-frame-pointer
+ # ASM isn't Darwin/Mach-O ready, #479554, buildsys doesn't grok CPPFLAGS
+ [[ ${CHOST} == *-darwin* ]] && append-flags -DCRYPTOPP_DISABLE_X86ASM
+
+ emake -f GNUmakefile CXX="$(tc-getCXX)" CXXFLAGS="${CXXFLAGS}" LIBDIR="$(get_libdir)" PREFIX="${EPREFIX}/usr" LIBTOOL="./libtool"
+}
+
+src_test() {
+ # ensure that all test vectors have Unix line endings
+ local file
+ for file in TestVectors/* ; do
+ edos2unix ${file}
+ done
+
+ if ! emake CXX="$(tc-getCXX)" CXXFLAGS="${CXXFLAGS}" test ; then
+ eerror "Crypto++ self-tests failed."
+ eerror "Try to remove some optimization flags and reemerge Crypto++."
+ die "emake test failed"
+ fi
+}
+
+src_install() {
+ emake DESTDIR="${D}" LIBDIR="$(get_libdir)" PREFIX="${EPREFIX}/usr" LIBTOOL="./libtool" install
+ use static-libs || rm -f "${ED}"/usr/$(get_libdir)/*.la
+}
diff --git a/dev-libs/crypto++/files/crypto++-5.6.2-cve-2015-2141.patch b/dev-libs/crypto++/files/crypto++-5.6.2-cve-2015-2141.patch
new file mode 100644
index 000000000000..32c5164609e9
--- /dev/null
+++ b/dev-libs/crypto++/files/crypto++-5.6.2-cve-2015-2141.patch
@@ -0,0 +1,32 @@
+From 9425e16437439e68c7d96abef922167d68fafaff Mon Sep 17 00:00:00 2001
+From: Jeffrey Walton <noloader@gmail.com>
+Date: Sat, 27 Jun 2015 17:56:01 -0400
+Subject: [PATCH] Fix for CVE-2015-2141. Thanks to Evgeny Sidorov for
+ reporting. Squaring to satisfy Jacobi requirements suggested by JPM.
+
+---
+ rw.cpp | 8 +++++++-
+ 1 file changed, 7 insertions(+), 1 deletion(-)
+
+diff --git a/rw.cpp b/rw.cpp
+index cdd9f2d..0b9318b 100644
+--- a/rw.cpp
++++ b/rw.cpp
+@@ -126,10 +126,16 @@ Integer InvertibleRWFunction::CalculateInverse(RandomNumberGenerator &rng, const
+ DoQuickSanityCheck();
+ ModularArithmetic modn(m_n);
+ Integer r, rInv;
+- do { // do this in a loop for people using small numbers for testing
++
++ // do this in a loop for people using small numbers for testing
++ do {
+ r.Randomize(rng, Integer::One(), m_n - Integer::One());
++ // Fix for CVE-2015-2141. Thanks to Evgeny Sidorov for reporting.
++ // Squaring to satisfy Jacobi requirements suggested by JPM.
++ r = modn.Square(r);
+ rInv = modn.MultiplicativeInverse(r);
+ } while (rInv.IsZero());
++
+ Integer re = modn.Square(r);
+ re = modn.Multiply(re, x); // blind
+