aboutsummaryrefslogtreecommitdiffstats
path: root/community/yadifa/libressl-compat.patch
diff options
context:
space:
mode:
Diffstat (limited to 'community/yadifa/libressl-compat.patch')
-rw-r--r--community/yadifa/libressl-compat.patch95
1 files changed, 95 insertions, 0 deletions
diff --git a/community/yadifa/libressl-compat.patch b/community/yadifa/libressl-compat.patch
new file mode 100644
index 0000000000..4b2c19d15b
--- /dev/null
+++ b/community/yadifa/libressl-compat.patch
@@ -0,0 +1,95 @@
+From 553b9d7d2a3c7cf56d1f02d73eb37cbd5a29e9df Mon Sep 17 00:00:00 2001
+From: Bernard Spil <brnrd@FreeBSD.org>
+Date: Sat, 25 Feb 2017 12:32:24 +0100
+Subject: [PATCH] Fix build issues with LibreSSL
+
+ - Check LIBRESSL_VERSION_NUMBER in addition to OpenSSL > 1.1
+
+LibreSSL forked from OpenSSL 1.0.1f and does not have all features
+from 1.1.0.
+---
+ lib/dnscore/src/dnskey_dsa.c | 4 ++--
+ lib/dnscore/src/dnskey_ecdsa.c | 2 +-
+ lib/dnscore/src/dnskey_rsa.c | 2 +-
+ lib/dnscore/src/tsig.c | 6 +++---
+ 4 files changed, 7 insertions(+), 7 deletions(-)
+
+diff --git a/lib/dnscore/src/dnskey_dsa.c b/lib/dnscore/src/dnskey_dsa.c
+index 43fe450..54b93f0 100644
+--- a/lib/dnscore/src/dnskey_dsa.c
++++ b/lib/dnscore/src/dnskey_dsa.c
+@@ -70,7 +70,7 @@
+ #error "OPENSSL_VERSION_NUMBER not defined"
+ #endif
+
+-#if OPENSSL_VERSION_NUMBER < 0x10100000L
++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER)
+
+ /*
+ * Backward-compatible interface for 0.9.x
+@@ -226,7 +226,7 @@ dnskey_dsa_genkey(u32 size)
+ int err;
+ DSA* dsa;
+
+-#if OPENSSL_VERSION_NUMBER < 0x10100000L
++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER)
+ dsa = DSA_generate_parameters(size, NULL,0, NULL, NULL, NULL, NULL);
+ #else
+ dsa = DSA_new();
+diff --git a/lib/dnscore/src/dnskey_ecdsa.c b/lib/dnscore/src/dnskey_ecdsa.c
+index 1638c3b..1ed19d4 100644
+--- a/lib/dnscore/src/dnskey_ecdsa.c
++++ b/lib/dnscore/src/dnskey_ecdsa.c
+@@ -79,7 +79,7 @@
+ #define DNSKEY_ALGORITHM_ECDSAP256SHA256_NID NID_X9_62_prime256v1
+ #define DNSKEY_ALGORITHM_ECDSAP384SHA384_NID NID_secp384r1
+
+-#if OPENSSL_VERSION_NUMBER < 0x10100000L
++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER)
+
+ #define SSL_FIELD_GET(st_,f_) if(f_ != NULL) { *f_ = st_->f_; }
+ #define SSL_FIELD_SET(st_,f_) if(f_ != NULL) { BN_free(st_->f_); st_->f_ = f_; }
+diff --git a/lib/dnscore/src/dnskey_rsa.c b/lib/dnscore/src/dnskey_rsa.c
+index f52f84f..00529ea 100644
+--- a/lib/dnscore/src/dnskey_rsa.c
++++ b/lib/dnscore/src/dnskey_rsa.c
+@@ -64,7 +64,7 @@
+
+ #define MODULE_MSG_HANDLE g_system_logger
+
+-#if OPENSSL_VERSION_NUMBER < 0x10100000L
++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER)
+
+ #define SSL_FIELD_GET(st_,f_) if(f_ != NULL) { *f_ = st_->f_; }
+ #define SSL_FIELD_SET(st_,f_) if(f_ != NULL) { BN_free(st_->f_); st_->f_ = f_; }
+diff --git a/lib/dnscore/src/tsig.c b/lib/dnscore/src/tsig.c
+index 21d7e9d..391e72a 100644
+--- a/lib/dnscore/src/tsig.c
++++ b/lib/dnscore/src/tsig.c
+@@ -233,7 +233,7 @@
+ tsig_hmac_t
+ tsig_hmac_allocate()
+ {
+-#if OPENSSL_VERSION_NUMBER < 0x10100000L // ie: 0.9.x
++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) // ie: 0.9.x
+ HMAC_CTX *hmac;
+ ZALLOC_OR_DIE(HMAC_CTX*, hmac, HMAC_CTX, GENERIC_TAG);
+ HMAC_CTX_init(hmac);
+@@ -257,7 +257,7 @@ tsig_hmac_free(tsig_hmac_t t)
+ {
+ HMAC_CTX *hmac = (HMAC_CTX*)t;
+ yassert(hmac != NULL);
+-#if OPENSSL_VERSION_NUMBER < 0x10100000L
++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER)
+ HMAC_CTX_cleanup(hmac);
+ ZFREE(t, HMAC_CTX);
+ #else
+@@ -268,7 +268,7 @@ tsig_hmac_free(tsig_hmac_t t)
+ void tsig_hmac_reset(tsig_hmac_t t)
+ {
+ HMAC_CTX *hmac = (HMAC_CTX*)t;
+-#if OPENSSL_VERSION_NUMBER < 0x10100000L
++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER)
+ HMAC_CTX_cleanup(hmac);
+ HMAC_CTX_init(hmac);
+ #else