summaryrefslogtreecommitdiff
path: root/net-libs/wvstreams
diff options
context:
space:
mode:
Diffstat (limited to 'net-libs/wvstreams')
-rw-r--r--net-libs/wvstreams/Manifest5
-rw-r--r--net-libs/wvstreams/files/wvstreams-4.6.1_p14-libressl.patch114
-rw-r--r--net-libs/wvstreams/wvstreams-4.6.1_p14-r1.ebuild6
-rw-r--r--net-libs/wvstreams/wvstreams-99999.ebuild7
4 files changed, 125 insertions, 7 deletions
diff --git a/net-libs/wvstreams/Manifest b/net-libs/wvstreams/Manifest
index 49a55565bf36..42c06088b025 100644
--- a/net-libs/wvstreams/Manifest
+++ b/net-libs/wvstreams/Manifest
@@ -6,6 +6,7 @@ AUX wvstreams-4.6.1-gcc47.patch 1308 BLAKE2B 4c49bb694eb50452f3d158ef9e8c8097861
AUX wvstreams-4.6.1-glibc212.patch 497 BLAKE2B d4ba5b6e687b7746f4be510721ee5fc7fda4d5f8c7c7e9b14479e0301de6329925b8a876ec3e98007d7edcc3646685c1e18b45d4b91ed891a69df4950ccb4415 SHA512 467ef4faad88b4ba150a05f95147bbd2ba8d297bbb5e32a1c85e482b62786e1ec82f6ae8a8f62426c01239ec9e9da899f38fcd7a7d4737dd9a8c9d6de0bdedb1
AUX wvstreams-4.6.1-openssl-1.0.0.patch 399 BLAKE2B c290744f06cd7781ce64fa43e0d7a076b80fa3130425e2ad19768f6cf3f88bcd007b6ab5d3fc2fef24396cb064c76917a577f25f9329cecbc3c41f1500f4008a SHA512 98d8c8b529e9ce6c8219f70dbec8f9270d14952e88e3f0f0cf16e58cfed2cad8a2bd4039d2006290f9567beaeb5ec77ef500fb5bc812b7a3bac6a1bf4e2888aa
AUX wvstreams-4.6.1-parallel-make.patch 1882 BLAKE2B 03c40c90d63c72065ad29dcb7436a37e5d5037595c285671a5c7c1b76a74723e63ac7eba024326e7452b4c9af507b2925609faed0496c384c04980044dea28b6 SHA512 d7fffbd7940495f2e34d3317b8f0066f6caa98e213df00bf31e3f42fa6821c9fd017e3052f7ff98303a8d8bb61d9b24a14b87ddd18199038e083e42cf253c17e
+AUX wvstreams-4.6.1_p14-libressl.patch 3457 BLAKE2B f5c1a3ee44007fc3ca7c08be91ed9fbee84939bb09a02d699a2da7aa60238762a0d38fd8be5e7bb3aab891fa8b99f4c0de2a206e6db58fdc12c5adeaebf18700 SHA512 5561021c6ebeb9fc8255eb42be799dc23d32e368cb2662cbb78e5f5258392983bd9b5174954f1262062be1fe5638941255bd612760d1373d5682c139dcaf3ee4
AUX wvstreams-99999-openssl-ldflags.patch 349 BLAKE2B d8df661e5219b7890e338ed21a570194a93d64142ce6e96f81c141cdb4ae33c6e785fe863278347e2b7903df13a5390305a18568fca9880c2ac45534458671ec SHA512 a8b90e1bbda676ba4303c7a31fc896955c3a0aea0ba4d8a69514210a4baa1cc4228de43b648788cfca2e6b607040daaa520568c7d15b258d04b803bba6375637
AUX wvstreams-99999-soname.patch 273 BLAKE2B ef364e25848b4727a0e8b75f155ac2807f1d8cc976ea72af3191ca25a0dbb5d4345030812fad7af839e1c126db185b6ce48fb50d2211e810954f2f714717854e SHA512 c8388a5ac1e0bbbf1574c97004ae7381a466a7182614cc7345cc3f9639771e6696ce32ce03b98604a05618be03c30cb95079085e7c1c935c42dcfe5e9453f886
DIST wvstreams-4.6.1.tar.gz 1118456 BLAKE2B 62243d9adc6ff5d01b7dfeb2ce24e8e530914e6ac4540e542dc3cee31e00d32211ad1c6085d7f5bd6e5fd85ff66e8c93afa37cec81f976590ba150f039dc8580 SHA512 59d64e527d86394b768b35254bf95ea59c412c0e092393ea3c84ec3202949150439bb6093bd7350b64ad4767acdb8feb38806c03de4e5cf238ed893f41db4a4a
@@ -14,6 +15,6 @@ DIST wvstreams_4.6.1.orig.tar.gz 1118456 BLAKE2B 62243d9adc6ff5d01b7dfeb2ce24e8e
EBUILD wvstreams-4.6.1-r3.ebuild 2404 BLAKE2B fb696df3dbda56527f29646f03d3f4cfd7507b9af6d08b50771fff15770c35e96bdb19e61b3651abd72f63beb17096216a85b10fd01ef7306ca082406e8e6c68 SHA512 f4a95c3d74d79315e297a78c99ab2fca17b953c2b2b0f62934ed1de78b3ef98aba423057033eee1936717ff32f469b404875944f81b8e6f723f8cd701990ace9
EBUILD wvstreams-4.6.1-r4.ebuild 2038 BLAKE2B dc58084533c0dd159f6cece9f3e71a0fd986ea9ea79b5042f597f323f34787f2084b1f823cfa014f820c65317b3d27ffa0da7cf138caac68a4c229282d2e5d82 SHA512 b2a9ead8d0b3bb82b8b7dc2f08c51994ba43abae7cda7177ee700d1410652f46f07a8464dacefa8356fb2a97b9d23de005f070fc94b82a14ace273d3061101f2
EBUILD wvstreams-4.6.1-r5.ebuild 2112 BLAKE2B a48edb2558858a642096d3d5ca9026556d96983d509a4c5cf1d13fee70780354c5b268583c720aaf76f41d3cef73d406fb76b44fd798f9cd075305f527fcb352 SHA512 343a767d872bb15a883444b531461860f57b367478065b6bf190d2db1dffe7576d2e9e63a76a7ff1b66cc7e44c764692e0fe731a895bf937602ef9dc38866d20
-EBUILD wvstreams-4.6.1_p14-r1.ebuild 2082 BLAKE2B 578cc743dbde68c624e9e8a7aa5a58b2e6e4542e70b8de413d2be8233dc259168986813c8fe8702f2e21c6babaa219ba05d00a3b6821bdff5363f0b62a641aab SHA512 ecf7d794298df0dcba5b3cb70693b24a6f13e7a33d1afa8ae7f6ea5431b99b29488c8a2eb7bac76783505f022acbd2557ce1380bbd43099a70783cb2b9d44ddf
-EBUILD wvstreams-99999.ebuild 1907 BLAKE2B ae0a110b682b12e3bdb9a896e8d20defbfd4ef32f53ed58729d91ced4fecaade6f36bfc6282143aa4307ea5a1ac3e27ec5fa4546ed24fe57f2e583a0926e5259 SHA512 8a8a507e142f5731b0bb1608399ad988fba56cb3060b8e55351a963e1fe1d94aa432e04740ea9f5560c9f317892d03f72c8d2d58194dc5bef0d99bcec6f046d5
+EBUILD wvstreams-4.6.1_p14-r1.ebuild 2192 BLAKE2B ee62497b120f33efe48cab6eca998c142d32db0eafdb86413c72e8352d4d3f706dd84e8d78cd31b90a34f32fe5064266172011bc62433f0014aca0e950796750 SHA512 cb0fefeb8deb030026190dd35ddba28217cd5553b8c0c821f5c138c2ad6bb384bbd08a5648fa63567c7c174a60647ee45c86895d021588db1bd6695d8db913e0
+EBUILD wvstreams-99999.ebuild 1967 BLAKE2B c6b1ef94c65245dc9c5cf3937b957a552411c6d7b2eb374526b890257f1bd803e0b3055345996f40b233f48dc444a515aaba5b86f923ec43aec44e896374878a SHA512 bf142a212c96d94795fff5da6e7516f8f4ed24169711a36ecfb51adce5cc9a312f0c14abb17e83a42683fb94126f14f5693a2e4e5b7f25d5fd83040acde5ed0d
MISC metadata.xml 567 BLAKE2B 75e97c66b9091dd12ae8cabfc3f1f80b772e7cc835d5fe6fc4399dc837ca0576d567af45186bfdaeaefb862938f82d0b75c339ec73fcb0a5f6abe2b81ce8ed83 SHA512 11ce01ce8844fa3c43e8175c36a0f76266ce43acc9d6ed86156bfddc0b8e5f5ede6ecac9518e329c48fa46a448e57021496e46f9282d6d0cc81133ac9488c437
diff --git a/net-libs/wvstreams/files/wvstreams-4.6.1_p14-libressl.patch b/net-libs/wvstreams/files/wvstreams-4.6.1_p14-libressl.patch
new file mode 100644
index 000000000000..e897c95bf093
--- /dev/null
+++ b/net-libs/wvstreams/files/wvstreams-4.6.1_p14-libressl.patch
@@ -0,0 +1,114 @@
+From cb8a81da928054c2e8174d671f2abc88f4f35b87 Mon Sep 17 00:00:00 2001
+From: Stefan Strogin <steils@gentoo.org>
+Date: Mon, 10 Jun 2019 17:07:06 +0300
+Subject: [PATCH] Fix LibreSSL support
+
+---
+ crypto/wvocsp.cc | 34 ++++++++++++++++++++++++++++++++++
+ crypto/wvx509mgr.cc | 14 ++++++++++++++
+ include/wvdigest.h | 1 +
+ 3 files changed, 49 insertions(+)
+
+diff --git a/crypto/wvocsp.cc b/crypto/wvocsp.cc
+index 7d5da072..7a157f90 100644
+--- a/crypto/wvocsp.cc
++++ b/crypto/wvocsp.cc
+@@ -130,6 +130,7 @@ bool WvOCSPResp::signedbycert(const WvX509 &cert) const
+ }
+
+
++#ifndef LIBRESSL_VERSION_NUMBER
+ WvX509 WvOCSPResp::get_signing_cert() const
+ {
+ const STACK_OF(X509) *certs = OCSP_resp_get0_certs(bs);
+@@ -143,6 +144,39 @@ WvX509 WvOCSPResp::get_signing_cert() const
+
+ return WvX509();
+ }
++#else
++WvX509 WvOCSPResp::get_signing_cert() const
++{
++ if (!bs || !sk_X509_num(bs->certs))
++ return WvX509();
++
++ // note: the following bit of code is taken almost verbatim from
++ // ocsp_vfy.c in OpenSSL 0.9.8. Copyright and attribution should
++ // properly belong to them
++
++ OCSP_RESPID *id = bs->tbsResponseData->responderId;
++
++ if (id->type == V_OCSP_RESPID_NAME)
++ {
++ X509 *x = X509_find_by_subject(bs->certs, id->value.byName);
++ if (x)
++ return WvX509(X509_dup(x));
++ }
++
++ if (id->value.byKey->length != SHA_DIGEST_LENGTH) return NULL;
++ unsigned char tmphash[SHA_DIGEST_LENGTH];
++ unsigned char *keyhash = id->value.byKey->data;
++ for (int i = 0; i < sk_X509_num(bs->certs); i++)
++ {
++ X509 *x = sk_X509_value(bs->certs, i);
++ X509_pubkey_digest(x, EVP_sha1(), tmphash, NULL);
++ if(!memcmp(keyhash, tmphash, SHA_DIGEST_LENGTH))
++ return WvX509(X509_dup(x));
++ }
++
++ return WvX509();
++}
++#endif /* LIBRESSL_VERSION_NUMBER */
+
+
+ WvOCSPResp::Status WvOCSPResp::get_status(const WvX509 &cert,
+diff --git a/crypto/wvx509mgr.cc b/crypto/wvx509mgr.cc
+index 156d3a49..e2bb3ffe 100644
+--- a/crypto/wvx509mgr.cc
++++ b/crypto/wvx509mgr.cc
+@@ -350,8 +350,15 @@ bool WvX509Mgr::signcert(WvX509 &unsignedcert) const
+ return false;
+ }
+
++#ifndef LIBRESSL_VERSION_NUMBER
+ uint32_t ex_flags = X509_get_extension_flags(cert);
+ uint32_t ex_kusage = X509_get_key_usage(cert);
++#else
++ X509_check_purpose(cert, -1, -1);
++ uint32_t ex_flags = cert->ex_flags;
++ uint32_t ex_kusage = (cert->ex_flags & EXFLAG_KUSAGE) ?
++ cert->ex_kusage : UINT32_MAX;
++#endif
+ if (cert == unsignedcert.cert)
+ {
+ debug("Self Signing!\n");
+@@ -392,8 +399,15 @@ bool WvX509Mgr::signcert(WvX509 &unsignedcert) const
+
+ bool WvX509Mgr::signcrl(WvCRL &crl) const
+ {
++#ifndef LIBRESSL_VERSION_NUMBER
+ uint32_t ex_flags = X509_get_extension_flags(cert);
+ uint32_t ex_kusage = X509_get_key_usage(cert);
++#else
++ X509_check_purpose(cert, -1, -1);
++ uint32_t ex_flags = cert->ex_flags;
++ uint32_t ex_kusage = (cert->ex_flags & EXFLAG_KUSAGE) ?
++ cert->ex_kusage : UINT32_MAX;
++#endif
+ if (!isok() || !crl.isok())
+ {
+ debug(WvLog::Warning, "Asked to sign CRL, but certificate or CRL (or "
+diff --git a/include/wvdigest.h b/include/wvdigest.h
+index f2eed401..e637fb49 100644
+--- a/include/wvdigest.h
++++ b/include/wvdigest.h
+@@ -10,6 +10,7 @@
+ #include "wvencoder.h"
+ #include <stdint.h>
+ #include <openssl/evp.h>
++#include <openssl/hmac.h>
+
+
+ /**
+--
+2.21.0
+
diff --git a/net-libs/wvstreams/wvstreams-4.6.1_p14-r1.ebuild b/net-libs/wvstreams/wvstreams-4.6.1_p14-r1.ebuild
index 58f5b66846d7..34a203bd673a 100644
--- a/net-libs/wvstreams/wvstreams-4.6.1_p14-r1.ebuild
+++ b/net-libs/wvstreams/wvstreams-4.6.1_p14-r1.ebuild
@@ -14,7 +14,7 @@ SRC_URI="
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~hppa ~ppc ~sparc ~x86"
-IUSE="pam doc +ssl +dbus debug boost"
+IUSE="boost +dbus debug doc libressl pam"
#Tests fail if openssl is not compiled with -DPURIFY. Gentoo's isn't. FAIL!
RESTRICT="test"
@@ -24,10 +24,11 @@ RESTRICT="test"
#more tightly this time. Probably for the better since upstream xplc seems dead.
RDEPEND="
- >=dev-libs/openssl-1.1:0=
sys-libs/readline:0=
sys-libs/zlib
dbus? ( >=sys-apps/dbus-1.4.20 )
+ !libressl? ( >=dev-libs/openssl-1.1:0= )
+ libressl? ( dev-libs/libressl:0= )
pam? ( virtual/pam )
"
DEPEND="
@@ -49,6 +50,7 @@ src_prepare() {
default
eapply $(awk '{ print "'"${WORKDIR}"'/debian/patches/" $0; }' < "${WORKDIR}"/debian/patches/series)
+ eapply "${FILESDIR}"/${P}-libressl.patch # bug 687096
eautoreconf
}
diff --git a/net-libs/wvstreams/wvstreams-99999.ebuild b/net-libs/wvstreams/wvstreams-99999.ebuild
index 8665f2087f92..dc51487d43e1 100644
--- a/net-libs/wvstreams/wvstreams-99999.ebuild
+++ b/net-libs/wvstreams/wvstreams-99999.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2018 Gentoo Authors
+# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
@@ -12,13 +12,14 @@ EGIT_REPO_URI="${HOMEPAGE}"
LICENSE="GPL-2"
SLOT="0/5.0"
KEYWORDS=""
-IUSE="+dbus debug doc pam static-libs +zlib"
+IUSE="+dbus debug doc libressl pam static-libs +zlib"
RDEPEND="
- <dev-libs/openssl-1.1:0=
sys-libs/readline:0=
sys-libs/zlib
dbus? ( >=sys-apps/dbus-1.4.20 )
+ !libressl? ( <dev-libs/openssl-1.1:0= )
+ libressl? ( dev-libs/libressl:0= )
pam? ( virtual/pam )
"
DEPEND="