commit:     00fec71fabb8dbf98e22436a3ac643581149f2dc
Author:     Quentin Retornaz <gentoo <AT> retornaz <DOT> com>
AuthorDate: Sun Jan 17 19:28:36 2021 +0000
Commit:     Quentin Retornaz <gentoo <AT> retornaz <DOT> com>
CommitDate: Tue Jan 26 00:21:43 2021 +0000
URL:        https://gitweb.gentoo.org/repo/proj/libressl.git/commit/?id=00fec71f

net-libs/libnice: new package

Package-Manager: Portage-3.0.12, Repoman-3.0.2
Signed-off-by: Quentin Retornaz <gentoo <AT> retornaz.com>

 net-libs/libnice/Manifest                          |  1 +
 .../libnice/files/libnice-0.1.15-libressl.patch    | 57 +++++++++++++++++++++
 net-libs/libnice/libnice-0.1.15.ebuild             | 58 ++++++++++++++++++++++
 net-libs/libnice/metadata.xml                      |  8 +++
 4 files changed, 124 insertions(+)

diff --git a/net-libs/libnice/Manifest b/net-libs/libnice/Manifest
new file mode 100644
index 0000000..dc6cbc3
--- /dev/null
+++ b/net-libs/libnice/Manifest
@@ -0,0 +1 @@
+DIST libnice-0.1.15.tar.gz 1064100 BLAKE2B 
81f06ba599b01084586a8d904b9ae513d6bc3531ec42674648fda320eea6cd9348acf423571922bab4e338bf135f85b292046352ed6f5e4fefba736d787b1ff1
 SHA512 
60a8bcca06c0ab300dfabbf13e45aeac2085d553c420c5cc4d2fdeb46b449b2b9c9aee8015b0662c16bd1cecf5a49824b7e24951a8a0b66a87074cb00a619c0c

diff --git a/net-libs/libnice/files/libnice-0.1.15-libressl.patch 
b/net-libs/libnice/files/libnice-0.1.15-libressl.patch
new file mode 100644
index 0000000..6c38069
--- /dev/null
+++ b/net-libs/libnice/files/libnice-0.1.15-libressl.patch
@@ -0,0 +1,57 @@
+From 926afef019ca9f297cebbe13479159ac5c087f00 Mon Sep 17 00:00:00 2001
+From: Stefan Strogin <[email protected]>
+Date: Fri, 15 Feb 2019 20:45:34 +0200
+Subject: [PATCH] stun: Fix LibreSSL support
+
+Closes #71
+---
+ stun/stunhmac.c | 12 ++++++++----
+ 1 file changed, 8 insertions(+), 4 deletions(-)
+
+diff --git a/stun/stunhmac.c b/stun/stunhmac.c
+index c7d1432..c9d183f 100644
+--- a/stun/stunhmac.c
++++ b/stun/stunhmac.c
+@@ -75,7 +75,8 @@ void stun_sha1 (const uint8_t *msg, size_t len, size_t 
msg_len, uint8_t *sha,
+   assert (ret == 1);
+ #endif
+ 
+-#if OPENSSL_VERSION_NUMBER < 0x10100000L
++#if (OPENSSL_VERSION_NUMBER < 0x10100000L) || \
++    (defined(LIBRESSL_VERSION_NUMBER) && LIBRESSL_VERSION_NUMBER < 
0x2070000fL)
+   HMAC_CTX stackctx;
+   HMAC_CTX *ctx = &stackctx;
+   HMAC_CTX_init (ctx);
+@@ -101,7 +102,8 @@ void stun_sha1 (const uint8_t *msg, size_t len, size_t 
msg_len, uint8_t *sha,
+ 
+   TRY (HMAC_Final (ctx, sha, NULL));
+ 
+-#if OPENSSL_VERSION_NUMBER < 0x10100000L
++#if (OPENSSL_VERSION_NUMBER < 0x10100000L) || \
++    (defined(LIBRESSL_VERSION_NUMBER) && LIBRESSL_VERSION_NUMBER < 
0x2070000fL)
+   HMAC_CTX_cleanup (ctx);
+ #else
+   HMAC_CTX_free (ctx);
+@@ -172,7 +174,8 @@ void stun_hash_creds (const uint8_t *realm, size_t 
realm_len,
+ #ifdef HAVE_OPENSSL
+   EVP_MD_CTX *ctx;
+ 
+-#if OPENSSL_VERSION_NUMBER < 0x10100000L
++#if (OPENSSL_VERSION_NUMBER < 0x10100000L) || \
++    (defined(LIBRESSL_VERSION_NUMBER) && LIBRESSL_VERSION_NUMBER < 
0x2070000fL)
+   ctx = EVP_MD_CTX_create ();
+ #else
+   ctx = EVP_MD_CTX_new ();
+@@ -186,7 +189,8 @@ void stun_hash_creds (const uint8_t *realm, size_t 
realm_len,
+   EVP_DigestUpdate (ctx, password_trimmed, password_len);
+   EVP_DigestFinal_ex (ctx, md5, NULL);
+ 
+-#if OPENSSL_VERSION_NUMBER < 0x10100000L
++#if (OPENSSL_VERSION_NUMBER < 0x10100000L) || \
++    (defined(LIBRESSL_VERSION_NUMBER) && LIBRESSL_VERSION_NUMBER < 
0x2070000fL)
+   EVP_MD_CTX_destroy (ctx);
+ #else
+   EVP_MD_CTX_free (ctx);
+-- 
+2.20.1
+

diff --git a/net-libs/libnice/libnice-0.1.15.ebuild 
b/net-libs/libnice/libnice-0.1.15.ebuild
new file mode 100644
index 0000000..aee3c3f
--- /dev/null
+++ b/net-libs/libnice/libnice-0.1.15.ebuild
@@ -0,0 +1,58 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+inherit multilib-minimal xdg
+
+DESCRIPTION="An implementation of the Interactice Connectivity Establishment 
standard (ICE)"
+HOMEPAGE="https://nice.freedesktop.org/wiki/";
+SRC_URI="https://nice.freedesktop.org/releases/${P}.tar.gz";
+
+LICENSE="|| ( MPL-1.1 LGPL-2.1 )"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ppc ppc64 sparc x86 ~amd64-linux 
~x86-linux ~ppc-macos"
+IUSE="+gnutls +introspection libressl +upnp"
+
+RDEPEND="
+       >=dev-libs/glib-2.48:2[${MULTILIB_USEDEP}]
+       introspection? ( >=dev-libs/gobject-introspection-1.30.0:= )
+       gnutls? ( >=net-libs/gnutls-2.12.0:0=[${MULTILIB_USEDEP}] )
+       !gnutls? (
+               libressl? ( dev-libs/libressl:0=[${MULTILIB_USEDEP}] )
+               !libressl? ( dev-libs/openssl:0=[${MULTILIB_USEDEP}] ) )
+       upnp? ( >=net-libs/gupnp-igd-0.2.4:=[${MULTILIB_USEDEP}] )
+"
+DEPEND="${RDEPEND}
+       dev-util/glib-utils
+       >=dev-util/gtk-doc-am-1.10
+       virtual/pkgconfig
+"
+
+PATCHES=( "${FILESDIR}/${P}-libressl.patch" ) # 
https://gitlab.freedesktop.org/libnice/libnice/merge_requests/50
+
+multilib_src_configure() {
+       # gstreamer plugin split off into media-plugins/gst-plugins-libnice
+       ECONF_SOURCE=${S} \
+       econf \
+               --enable-compile-warnings=yes \
+               --disable-static \
+               --disable-static-plugins \
+               --without-gstreamer \
+               --without-gstreamer-0.10 \
+               --with-crypto-library=$(usex gnutls gnutls openssl) \
+               $(multilib_native_use_enable introspection) \
+               $(use_enable upnp gupnp)
+
+       if multilib_is_native_abi; then
+               ln -s {"${S}"/,}docs/reference/libnice/html || die
+       fi
+}
+
+multilib_src_install_all() {
+       einstalldocs
+       find "${ED}" -name '*.la' -delete || die
+}
+
+multilib_src_test() {
+       emake -j1 check
+}

diff --git a/net-libs/libnice/metadata.xml b/net-libs/libnice/metadata.xml
new file mode 100644
index 0000000..3998080
--- /dev/null
+++ b/net-libs/libnice/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd";>
+<pkgmetadata>
+<maintainer type="project">
+       <email>[email protected]</email>
+       <name>Gentoo GNOME Desktop</name>
+</maintainer>
+</pkgmetadata>

Reply via email to