commit:     7e8dabe4cb93aacab8f043d01a289f7476a89fd5
Author:     Jeroen Roovers <jer <AT> gentoo <DOT> org>
AuthorDate: Fri May 20 07:58:58 2016 +0000
Commit:     Jeroen Roovers <jer <AT> gentoo <DOT> org>
CommitDate: Fri May 20 08:00:15 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7e8dabe4

net-analyzer/echoping: Fix building with >net-libs/gnutls-3.3 (bug #546864).

Package-Manager: portage-2.3.0_rc1

 .../echoping/echoping-6.0.2_p434-r2.ebuild         | 57 ++++++++++++++++++++++
 ...p434-gnutls_certificate_type_set_priority.patch | 11 +++++
 .../files/echoping-6.0.2_p434-gnutls_session.patch | 22 +++++++++
 3 files changed, 90 insertions(+)

diff --git a/net-analyzer/echoping/echoping-6.0.2_p434-r2.ebuild 
b/net-analyzer/echoping/echoping-6.0.2_p434-r2.ebuild
new file mode 100644
index 0000000..dc4f5d5
--- /dev/null
+++ b/net-analyzer/echoping/echoping-6.0.2_p434-r2.ebuild
@@ -0,0 +1,57 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit autotools eutils
+
+DESCRIPTION="Small program to test performances of remote servers"
+HOMEPAGE="http://echoping.sourceforge.net/";
+SRC_URI="https://dev.gentoo.org/~jer/${P}.tar.gz";
+LICENSE="GPL-2"
+
+SLOT="0"
+KEYWORDS="~amd64 ~hppa ~x86"
+IUSE="gnutls http icp idn priority smtp ssl tos postgres ldap"
+RESTRICT="test"
+
+RDEPEND="idn? ( net-dns/libidn )
+       postgres? ( dev-db/postgresql:* )
+       ldap? ( net-nds/openldap )
+       ssl? (
+               gnutls? ( >=net-libs/gnutls-3.3:= )
+               !gnutls? ( >=dev-libs/openssl-0.9.7d:= )
+       )"
+DEPEND="${RDEPEND}
+       >=sys-devel/libtool-2"
+
+REQUIRED_USE="gnutls? ( ssl )"
+
+DOCS=( README AUTHORS ChangeLog DETAILS NEWS TODO )
+
+src_prepare() {
+       epatch "${FILESDIR}"/${PN}-6.0.2_p434-fix_implicit_declarations.patch
+       epatch 
"${FILESDIR}"/${PN}-6.0.2_p434-gnutls_certificate_type_set_priority.patch
+       epatch "${FILESDIR}"/${PN}-6.0.2_p434-gnutls_session.patch
+
+       eautoreconf
+}
+
+src_configure() {
+       econf \
+               $(use_enable http)  \
+               $(use_enable icp) \
+               $(use_enable priority) \
+               $(use_enable smtp) \
+               $(use_enable tos) \
+               $(use_with idn libidn) \
+               $(usex gnutls $(use_with gnutls) $(use_with ssl)) \
+               --config-cache \
+               --disable-static \
+               --disable-ttcp
+}
+
+src_install() {
+       default
+       prune_libtool_files
+}

diff --git 
a/net-analyzer/echoping/files/echoping-6.0.2_p434-gnutls_certificate_type_set_priority.patch
 
b/net-analyzer/echoping/files/echoping-6.0.2_p434-gnutls_certificate_type_set_priority.patch
new file mode 100644
index 0000000..0cb219f
--- /dev/null
+++ 
b/net-analyzer/echoping/files/echoping-6.0.2_p434-gnutls_certificate_type_set_priority.patch
@@ -0,0 +1,11 @@
+--- a/echoping.c
++++ b/echoping.c
+@@ -981,8 +981,6 @@
+                     if (tls_result != 0)
+                         err_sys("Cannot create a new TLS session");
+                     gnutls_set_default_priority(session);
+-                    gnutls_certificate_type_set_priority(session,
+-                                                         cert_type_priority);
+                     gnutls_credentials_set(session, GNUTLS_CRD_CERTIFICATE, 
xcred);
+                     gnutls_transport_set_ptr(session, (gnutls_transport_ptr)
+                                              (long) sockfd);

diff --git 
a/net-analyzer/echoping/files/echoping-6.0.2_p434-gnutls_session.patch 
b/net-analyzer/echoping/files/echoping-6.0.2_p434-gnutls_session.patch
new file mode 100644
index 0000000..8b87c47
--- /dev/null
+++ b/net-analyzer/echoping/files/echoping-6.0.2_p434-gnutls_session.patch
@@ -0,0 +1,22 @@
+--- a/echoping.c
++++ b/echoping.c
+@@ -134,7 +134,7 @@
+     SSL            *sslh = NULL;
+ #endif
+ #ifdef GNUTLS
+-    gnutls_session  session;
++    gnutls_session_t  session;
+     gnutls_certificate_credentials xcred;
+     int             tls_result;
+     const int       cert_type_priority[3] = { GNUTLS_CRT_X509,
+--- a/echoping.h
++++ b/echoping.h
+@@ -103,7 +103,7 @@
+     SSL            *ssl;
+ #endif
+ #ifdef GNUTLS
+-    gnutls_session  tls;
++    gnutls_session_t  tls;
+ #endif
+ } CHANNEL;
+ 

Reply via email to