From 248f04bc75ead7853dc767ff283191161a93ea05 Mon Sep 17 00:00:00 2001 From: Justin Lecher Date: Thu, 6 Mar 2014 10:26:53 +0000 Subject: net-im/gajim: Backport fixes for latest pyopenssl, #503190 (Portage version: 2.2.8-r1/cvs/Linux x86_64, signed Manifest commit with key B9D4F231BD1558AB!) --- net-im/gajim/ChangeLog | 9 +- .../gajim-0.16_beta2-pyopenssl-backport-1.patch | 40 +++++++ .../gajim-0.16_beta2-pyopenssl-backport-2.patch | 40 +++++++ net-im/gajim/gajim-0.16_beta2-r1.ebuild | 127 +++++++++++++++++++++ 4 files changed, 215 insertions(+), 1 deletion(-) create mode 100644 net-im/gajim/files/gajim-0.16_beta2-pyopenssl-backport-1.patch create mode 100644 net-im/gajim/files/gajim-0.16_beta2-pyopenssl-backport-2.patch create mode 100644 net-im/gajim/gajim-0.16_beta2-r1.ebuild (limited to 'net-im/gajim') diff --git a/net-im/gajim/ChangeLog b/net-im/gajim/ChangeLog index 260198556202..dd02f513875a 100644 --- a/net-im/gajim/ChangeLog +++ b/net-im/gajim/ChangeLog @@ -1,6 +1,13 @@ # ChangeLog for net-im/gajim # Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/net-im/gajim/ChangeLog,v 1.192 2014/02/19 01:12:27 jer Exp $ +# $Header: /var/cvsroot/gentoo-x86/net-im/gajim/ChangeLog,v 1.193 2014/03/06 10:26:53 jlec Exp $ + +*gajim-0.16_beta2-r1 (06 Mar 2014) + + 06 Mar 2014; Justin Lecher +gajim-0.16_beta2-r1.ebuild, + +files/gajim-0.16_beta2-pyopenssl-backport-1.patch, + +files/gajim-0.16_beta2-pyopenssl-backport-2.patch: + Backport fixes for latest pyopenssl, #503190 19 Feb 2014; Jeroen Roovers gajim-0.15.3-r1.ebuild, gajim-0.15.4.ebuild, gajim-0.16_beta1.ebuild, gajim-0.16_beta2.ebuild: diff --git a/net-im/gajim/files/gajim-0.16_beta2-pyopenssl-backport-1.patch b/net-im/gajim/files/gajim-0.16_beta2-pyopenssl-backport-1.patch new file mode 100644 index 000000000000..576c8b394424 --- /dev/null +++ b/net-im/gajim/files/gajim-0.16_beta2-pyopenssl-backport-1.patch @@ -0,0 +1,40 @@ +Index: src/common/crypto.py +=================================================================== +--- src/common/crypto.py (revision 15157) ++++ src/common/crypto.py (revision 15338) +@@ -88,5 +88,5 @@ + + for s in sources: +- OpenSSL.rand.add(str(s), 0.01) ++ OpenSSL.rand.add(str(s), 1) + + # On Windows add the current contents of the screen to the PRNG state. +Index: src/common/jingle_xtls.py +=================================================================== +--- src/common/jingle_xtls.py (revision 15334) ++++ src/common/jingle_xtls.py (revision 15338) +@@ -120,5 +120,5 @@ + try: + with open(dh_params_name, "r") as dh_params_file: +- ctx.load_tmp_dh(dh_params_name) ++ ctx.load_tmp_dh(str(dh_params_name)) + except IOError as err: + log.warn('Unable to load DH parameter file: %s. You should generate it ' +@@ -130,5 +130,5 @@ + try: + with open(default_dh_params_name, "r") as default_dh_params_file: +- ctx.load_tmp_dh(default_dh_params_name) ++ ctx.load_tmp_dh(str(default_dh_params_name)) + except IOError as err: + log.error('Unable to load default DH parameter file: %s , %s' +Index: src/gajim.py +=================================================================== +--- src/gajim.py (revision 15332) ++++ src/gajim.py (revision 15338) +@@ -311,5 +311,5 @@ + PYOPENSSL_PRNG_PRESENT = True + # Seed from file +- OpenSSL.rand.load_file(RNG_SEED) ++ OpenSSL.rand.load_file(str(RNG_SEED)) + crypto.add_entropy_sources_OpenSSL() + except ImportError: diff --git a/net-im/gajim/files/gajim-0.16_beta2-pyopenssl-backport-2.patch b/net-im/gajim/files/gajim-0.16_beta2-pyopenssl-backport-2.patch new file mode 100644 index 000000000000..e3375c3f836b --- /dev/null +++ b/net-im/gajim/files/gajim-0.16_beta2-pyopenssl-backport-2.patch @@ -0,0 +1,40 @@ +Index: src/common/crypto.py +=================================================================== +--- src/common/crypto.py (revision 15338) ++++ src/common/crypto.py (revision 15339) +@@ -99,14 +99,14 @@ + for d in dirs: + if os.access(d, os.R_OK): +- for filename in os.listdir(d): +- OpenSSL.rand.add(filename, 0) +- try: +- with open(d + os.sep + filename, "r") as fp: +- # Limit the ammount of read bytes, in case a memory +- # file was opened +- OpenSSL.rand.add(str(fp.read(5000)), 0.01) +- except: +- # Ignore all read and access errors +- pass ++ for filename in os.listdir(d): ++ OpenSSL.rand.add(filename, 0) ++ try: ++ with open(d + os.sep + filename, "r") as fp: ++ # Limit the ammount of read bytes, in case a memory ++ # file was opened ++ OpenSSL.rand.add(str(fp.read(5000)), 1) ++ except IOError: ++ # Ignore all read and access errors ++ pass + + PYOPENSSL_PRNG_PRESENT = False +Index: src/gajim.py +=================================================================== +--- src/gajim.py (revision 15338) ++++ src/gajim.py (revision 15339) +@@ -464,5 +464,5 @@ + # Save the entropy from OpenSSL PRNG + if PYOPENSSL_PRNG_PRESENT: +- OpenSSL.rand.write_file(RNG_SEED) ++ OpenSSL.rand.write_file(str(RNG_SEED)) + # delete pid file on normal exit + if os.path.exists(pid_filename): diff --git a/net-im/gajim/gajim-0.16_beta2-r1.ebuild b/net-im/gajim/gajim-0.16_beta2-r1.ebuild new file mode 100644 index 000000000000..f4e5d68f4488 --- /dev/null +++ b/net-im/gajim/gajim-0.16_beta2-r1.ebuild @@ -0,0 +1,127 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/net-im/gajim/gajim-0.16_beta2-r1.ebuild,v 1.1 2014/03/06 10:26:53 jlec Exp $ + +EAPI=5 + +PYTHON_COMPAT=( python{2_6,2_7} ) +PYTHON_REQ_USE="sqlite,xml" + +AUTOTOOLS_AUTORECONF=true + +inherit autotools-utils python-r1 versionator + +MY_PV=${PV/_/-} +MY_P="${PN}-${MY_PV}" + +DESCRIPTION="Jabber client written in PyGTK" +HOMEPAGE="http://www.gajim.org/" +SRC_URI=" + http://www.gajim.org/downloads/$(get_version_component_range 1-2)/${MY_P}.tar.bz2" +# test? ( http://dev.gentoo.org/~jlec/distfiles/${PN}-tests-${PV}.tar.xz )" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~amd64 ~x86 ~x86-fbsd" +IUSE="avahi crypt dbus gnome gnome-keyring kde idle jingle libnotify networkmanager nls spell +srv test X xhtml" + +REQUIRED_USE=" + ${PYTHON_REQUIRED_USE} + libnotify? ( dbus ) + avahi? ( dbus ) + gnome? ( gnome-keyring )" + +COMMON_DEPEND=" + ${PYTHON_DEPS} + dev-python/pygtk:2[${PYTHON_USEDEP}] + x11-libs/gtk+:2" +DEPEND="${COMMON_DEPEND} + >=dev-util/intltool-0.40.1 + virtual/pkgconfig + >=sys-devel/gettext-0.17-r1" +RDEPEND="${COMMON_DEPEND} + dev-python/pyasn1[${PYTHON_USEDEP}] + >=dev-python/pyopenssl-0.14[${PYTHON_USEDEP}] + >=dev-python/python-nbxmpp-0.3[${PYTHON_USEDEP}] + crypt? ( + app-crypt/gnupg + dev-python/pycrypto[${PYTHON_USEDEP}] + ) + dbus? ( + dev-python/dbus-python[${PYTHON_USEDEP}] + dev-libs/dbus-glib + libnotify? ( dev-python/notify-python[${PYTHON_USEDEP}] ) + avahi? ( net-dns/avahi[dbus,gtk,python,${PYTHON_USEDEP}] ) + ) + gnome? ( + dev-python/libgnome-python + dev-python/egg-python + ) + gnome-keyring? ( dev-python/gnome-keyring-python ) + idle? ( x11-libs/libXScrnSaver ) + jingle? ( net-libs/farstream:0.1[python] ) + kde? ( kde-base/kwallet ) + networkmanager? ( + dev-python/dbus-python[${PYTHON_USEDEP}] + net-misc/networkmanager + ) + spell? ( app-text/gtkspell:2 ) + srv? ( + || ( + dev-python/libasyncns-python[${PYTHON_USEDEP}] + net-dns/bind-tools ) + ) + xhtml? ( dev-python/docutils[${PYTHON_USEDEP}] )" + +RESTRICT="test" + +S="${WORKDIR}"/${MY_P} + +PATCHES=( + "${FILESDIR}"/${P}-pyopenssl-backport-1.patch + "${FILESDIR}"/${P}-pyopenssl-backport-2.patch +) + +src_prepare() { + autotools-utils_src_prepare + python_copy_sources +} + +src_configure() { + configuration() { + local myeconfargs=( + $(use_enable nls) + $(use_with X x) + --docdir="/usr/share/doc/${PF}" + --libdir="$(python_get_sitedir)" + --enable-site-packages + ) + run_in_build_dir autotools-utils_src_configure + } + python_foreach_impl configuration +} + +src_compile() { + compilation() { + run_in_build_dir autotools-utils_src_compile + } + python_foreach_impl compilation +} + +src_test() { + testing() { + run_in_build_dir ${PYTHON} test/runtests.py --verbose 3 || die + } + python_foreach_impl testing +} + +src_install() { + installation() { + run_in_build_dir autotools-utils_src_install + python_optimize + } + python_foreach_impl installation + + rm "${ED}/usr/share/doc/${PF}/README.html" || die + dohtml README.html +} -- cgit v1.2.3-65-gdbad