commit:     7b86453f35d4dcda7dacf9d3d3768bef4c5ad995
Author:     Christian Ruppert <idl0r <AT> gentoo <DOT> org>
AuthorDate: Sun Dec 27 19:38:54 2015 +0000
Commit:     Christian Ruppert <idl0r <AT> gentoo <DOT> org>
CommitDate: Sun Dec 27 19:38:54 2015 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7b86453f

net-dns/bind-tools: Version bump. Fixes bug 563648 and bug 568982

Package-Manager: portage-2.2.26

 net-dns/bind-tools/Manifest                        |   2 +-
 ...s-9.10.3.ebuild => bind-tools-9.10.3_p2.ebuild} |   3 +-
 .../files/bind-tools-9.10.3_p2-libressl.patch      | 110 +++++++++++++++++++++
 3 files changed, 113 insertions(+), 2 deletions(-)

diff --git a/net-dns/bind-tools/Manifest b/net-dns/bind-tools/Manifest
index eba9343..f7eba42 100644
--- a/net-dns/bind-tools/Manifest
+++ b/net-dns/bind-tools/Manifest
@@ -1,4 +1,4 @@
 DIST bind-9.10.1-P1.tar.gz 8356463 SHA256 
974343108d32f253a130383d0ba51290fb7bf372092f1451f264a9e3ac09898d SHA512 
5fedff46d9cb0ff2544624c6d998f4f4bcd82152730e8e936c2611847fe443018b5c5c1dfb1dc49888dde5e3e30c3814f08369525612f0770575d54a3133ed48
 WHIRLPOOL 
6f39ff0e15676ed68f6d48d2ec5894b00de5192edbbbff94444f62dcf83e62a1e72019d575da97b6e6cde91b8918da78721c48510dbaad88095d4f2b3af375eb
 DIST bind-9.10.2-P2.tar.gz 8469608 SHA256 
b1e6f0af88634aaf48fb9d06bbf82968264f49b8e2685f061dd3fd4c1ab76c5f SHA512 
f59a4e7ef268cd95be9c31b8f908a77b261c76bfad0572608f503175e4e06e69c22ee88f4b6ae9578cd096aa069d9401f76084c7e07b3e98e9dbbb40d535695c
 WHIRLPOOL 
10b035f790a43552b22eed13a98b8dcfdc0cc0614342ae221ce23ba655fb40a46e336cca8575460bf26a792303c6eba61e184ca5deb219372fdd09609b4c9798
 DIST bind-9.10.2-P4.tar.gz 8471531 SHA256 
c00b21ec1def212957f28efe9d10aac52d6ec515e84fbf2c42143f5d71429cb8 SHA512 
71dd211167c46ada768389f818b114c9e101132544510df0fde7b83ccbe6ef4d7313a3a254f11efe1ccea43a35f74785de4757c9f6044320174f5a69d39cdd5c
 WHIRLPOOL 
0e179fb597c906c05d820969b8a005511aac177c968ffb10d34c1eda132c6caf9aa6fe8348a16e6ce55317784e44645a5295ccdb2aa740ac5960d6bd85dca7db
-DIST bind-9.10.3.tar.gz 8552545 SHA256 
9ac33bd8754ab4b6ee449b1b2aa88e09f51cda088486f4ab1585acd920b98ff0 SHA512 
4dd6b298496cb451d8ccc0c1360f7bcfcd4f3180097c7fe4af33bffb8f8d38808e56bcc008d009deb5c8f1e612a2c6c00154b822df94a709195a3abf63e98f99
 WHIRLPOOL 
0562f3fb4fd0ca9b487f84a67321c1ccf4d05ca13272de740db9ccbda7bb50bea9d23f4d6732bf9b9dabbfaeef03e87b47a7eb7f36bf84c92aee2e87a76ea859
+DIST bind-9.10.3-P2.tar.gz 8523719 SHA256 
4a6c1911ac0d4b6be635b63de3429b6c168ea244043f12bbc8a4eb3368fd6ecd SHA512 
21905cdff464f9ff275b87744433970d4a80faa6d9245c66c092421a45e89e438bd78f3bfe0d795964312f072c936e44eb6867b72decbba86821619180ced210
 WHIRLPOOL 
7bc4038a746e5b5c4166fb0d7a57985be9defef4c4c494492312671b81853f506c3216fcd94df993f6f1088d4c36c838d40d85fedbe8eee1b4265c5e2caecaa6

diff --git a/net-dns/bind-tools/bind-tools-9.10.3.ebuild 
b/net-dns/bind-tools/bind-tools-9.10.3_p2.ebuild
similarity index 97%
rename from net-dns/bind-tools/bind-tools-9.10.3.ebuild
rename to net-dns/bind-tools/bind-tools-9.10.3_p2.ebuild
index fb90401..59d4b9b 100644
--- a/net-dns/bind-tools/bind-tools-9.10.3.ebuild
+++ b/net-dns/bind-tools/bind-tools-9.10.3_p2.ebuild
@@ -21,7 +21,7 @@ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips 
~ppc ~ppc64 ~s390 ~s
 IUSE="doc gost gssapi idn ipv6 libressl readline seccomp ssl urandom xml"
 # no PKCS11 currently as it requires OpenSSL to be patched, also see bug 409687
 
-REQUIRED_USE="gost? ( ssl )"
+REQUIRED_USE="gost? ( !libressl ssl )"
 
 DEPEND="
        ssl? (
@@ -45,6 +45,7 @@ RESTRICT="test"
 src_prepare() {
        epatch "${FILESDIR}"/${PN}-9.5.0_p1-lwconfig.patch #231247
        epatch "${FILESDIR}"/${PN}-9.10.2-openssl.patch #417129
+       epatch "${FILESDIR}"/${P}-libressl.patch #563648
 
        # Disable tests for now, bug 406399
        sed -i '/^SUBDIRS/s:tests::' bin/Makefile.in lib/Makefile.in || die

diff --git a/net-dns/bind-tools/files/bind-tools-9.10.3_p2-libressl.patch 
b/net-dns/bind-tools/files/bind-tools-9.10.3_p2-libressl.patch
new file mode 100644
index 0000000..a38a70d
--- /dev/null
+++ b/net-dns/bind-tools/files/bind-tools-9.10.3_p2-libressl.patch
@@ -0,0 +1,110 @@
+Fix LibreSSL compatibility, patches from OpenBSD
+
+http://cvsweb.openbsd.org/cgi-bin/cvsweb/ports/net/isc-bind/patches/
+
+http://cvsweb.openbsd.org/cgi-bin/cvsweb/~checkout~/ports/net/isc-bind/patches/patch-lib_dns_dst_openssl_h?rev=1.1&content-type=text/plain
+http://cvsweb.openbsd.org/cgi-bin/cvsweb/~checkout~/ports/net/isc-bind/patches/patch-lib_dns_openssl_link_c?rev=1.1&content-type=text/plain
+http://cvsweb.openbsd.org/cgi-bin/cvsweb/~checkout~/ports/net/isc-bind/patches/patch-lib_dns_openssldh_link_c?rev=1.1&content-type=text/plain
+http://cvsweb.openbsd.org/cgi-bin/cvsweb/~checkout~/ports/net/isc-bind/patches/patch-lib_dns_openssldsa_link_c?rev=1.1&content-type=text/plain
+http://cvsweb.openbsd.org/cgi-bin/cvsweb/~checkout~/ports/net/isc-bind/patches/patch-lib_dns_opensslrsa_link_c?rev=1.1&content-type=text/plain
+
+--- lib/dns/dst_openssl.h.orig Wed Sep 16 14:00:47 2015
++++ lib/dns/dst_openssl.h      Wed Sep 16 14:02:42 2015
+@@ -36,7 +36,7 @@
+ #define USE_ENGINE 1
+ #endif
+ 
+-#if OPENSSL_VERSION_NUMBER < 0x10100000L
++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER)
+ /*
+  * These are new in OpenSSL 1.1.0.  BN_GENCB _cb needs to be declared in
+  * the function like this before the BN_GENCB_new call:
+--- lib/dns/openssl_link.c.orig        Wed Sep 16 14:01:23 2015
++++ lib/dns/openssl_link.c     Wed Sep 16 14:01:46 2015
+@@ -88,7 +88,7 @@ entropy_getpseudo(unsigned char *buf, int num) {
+       return (result == ISC_R_SUCCESS ? 1 : -1);
+ }
+ 
+-#if OPENSSL_VERSION_NUMBER < 0x10100000L
++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER)
+ static void
+ entropy_add(const void *buf, int num, double entropy) {
+       /*
+@@ -121,7 +121,7 @@ lock_callback(int mode, int type, const char *file, in
+               UNLOCK(&locks[type]);
+ }
+ 
+-#if OPENSSL_VERSION_NUMBER < 0x10100000L
++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER)
+ static unsigned long
+ id_callback(void) {
+       return ((unsigned long)isc_thread_self());
+@@ -187,7 +187,7 @@ dst__openssl_init(const char *engine) {
+       if (result != ISC_R_SUCCESS)
+               goto cleanup_mutexalloc;
+       CRYPTO_set_locking_callback(lock_callback);
+-#if OPENSSL_VERSION_NUMBER < 0x10100000L
++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER)
+       CRYPTO_set_id_callback(id_callback);
+ #endif
+ 
+@@ -287,7 +287,7 @@ dst__openssl_destroy(void) {
+       CRYPTO_cleanup_all_ex_data();
+ #endif
+       ERR_clear_error();
+-#if OPENSSL_VERSION_NUMBER < 0x10100000L
++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER)
+       ERR_remove_state(0);
+ #endif
+       ERR_free_strings();
+--- lib/dns/openssldh_link.c.orig      Wed Sep 16 14:01:23 2015
++++ lib/dns/openssldh_link.c   Wed Sep 16 14:02:06 2015
+@@ -173,7 +173,7 @@ openssldh_generate(dst_key_t *key, int generator, void
+       DH *dh = NULL;
+ #if OPENSSL_VERSION_NUMBER > 0x00908000L
+       BN_GENCB *cb;
+-#if OPENSSL_VERSION_NUMBER < 0x10100000L
++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER)
+       BN_GENCB _cb;
+ #endif
+       union {
+@@ -210,7 +210,7 @@ openssldh_generate(dst_key_t *key, int generator, void
+               if (dh == NULL)
+                       return (dst__openssl_toresult(ISC_R_NOMEMORY));
+               cb = BN_GENCB_new();
+-#if OPENSSL_VERSION_NUMBER >= 0x10100000L
++#if OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER)
+               if (cb == NULL) {
+                       DH_free(dh);
+                       return (dst__openssl_toresult(ISC_R_NOMEMORY));
+--- lib/dns/openssldsa_link.c.orig     Wed Sep 16 14:01:23 2015
++++ lib/dns/openssldsa_link.c  Wed Sep 16 14:02:22 2015
+@@ -359,7 +359,7 @@ openssldsa_generate(dst_key_t *key, int unused, void (
+       isc_result_t result;
+ #if OPENSSL_VERSION_NUMBER > 0x00908000L
+       BN_GENCB *cb;
+-#if OPENSSL_VERSION_NUMBER < 0x10100000L
++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER)
+       BN_GENCB _cb;
+ #endif
+       union {
+@@ -383,7 +383,7 @@ openssldsa_generate(dst_key_t *key, int unused, void (
+       if (dsa == NULL)
+               return (dst__openssl_toresult(DST_R_OPENSSLFAILURE));
+       cb = BN_GENCB_new();
+-#if OPENSSL_VERSION_NUMBER >= 0x10100000L
++#if OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER)
+       if (cb == NULL) {
+               DSA_free(dsa);
+               return (dst__openssl_toresult(DST_R_OPENSSLFAILURE));
+--- lib/dns/opensslrsa_link.c.orig     Wed Sep 16 14:01:23 2015
++++ lib/dns/opensslrsa_link.c  Wed Sep 16 14:02:31 2015
+@@ -771,7 +771,7 @@ opensslrsa_generate(dst_key_t *key, int exp, void (*ca
+       } u;
+       RSA *rsa = RSA_new();
+       BIGNUM *e = BN_new();
+-#if OPENSSL_VERSION_NUMBER < 0x10100000L
++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER)
+       BN_GENCB _cb;
+ #endif
+       BN_GENCB *cb = BN_GENCB_new();

Reply via email to