git: 0314ae446c30 - main - dns/ldns: Fix build with LibreSSL 3.5
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Sun, 07 Aug 2022 14:42:35 UTC
The branch main has been updated by brnrd: URL: https://cgit.FreeBSD.org/ports/commit/?id=0314ae446c30516d462afeee0b9992836bff921c commit 0314ae446c30516d462afeee0b9992836bff921c Author: Bernard Spil <brnrd@FreeBSD.org> AuthorDate: 2022-08-07 14:41:38 +0000 Commit: Bernard Spil <brnrd@FreeBSD.org> CommitDate: 2022-08-07 14:41:38 +0000 dns/ldns: Fix build with LibreSSL 3.5 * Merged upstream https://github.com/NLnetLabs/ldns/pull/151 Approved by: Maintainer timeout --- dns/ldns/files/patch-LibreSSL-3.5 | 98 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 98 insertions(+) diff --git a/dns/ldns/files/patch-LibreSSL-3.5 b/dns/ldns/files/patch-LibreSSL-3.5 new file mode 100644 index 000000000000..57f721cc614b --- /dev/null +++ b/dns/ldns/files/patch-LibreSSL-3.5 @@ -0,0 +1,98 @@ +diff --git a/dns/ldns/files/patch-LibreSSL-3.5 b/dns/ldns/files/patch-LibreSSL-3.5 +new file mode 100644 +index 000000000000..42af36a139eb +--- /dev/null ++++ b/dns/ldns/files/patch-LibreSSL-3.5 +@@ -0,0 +1,92 @@ ++From 887d618239312cc8c11e41c45492eee02a8f28a2 Mon Sep 17 00:00:00 2001 ++From: Theo Buehler <tb@openbsd.org> ++Date: Tue, 11 Jan 2022 21:14:24 +0100 ++Subject: [PATCH] Use accessors for DSA and RSA objects ++ ++In the upcoming LibreSSL version 3.5, the DSA and RSA structs will ++become opaque, so we should use the OpenSSL 1.1 setters and getters ++to fix the build. The relevant API has been available since ++LibreSSL 2.7. The last LibreSSL version (2.6) not having these ++accessors was EOL late 2018, so no users should be affected by this ++change. ++--- ++ dnssec.c | 4 ++-- ++ host2str.c | 4 ++-- ++ keys.c | 6 +++--- ++ 3 files changed, 7 insertions(+), 7 deletions(-) ++ ++diff --git a/dnssec.c b/dnssec.c ++index 63fece52..fbaa518a 100644 ++--- dnssec.c.orig +++++ dnssec.c ++@@ -381,7 +381,7 @@ ldns_key_buf2dsa_raw(const unsigned char* key, size_t len) ++ BN_free(Y); ++ return NULL; ++ } ++-#if OPENSSL_VERSION_NUMBER < 0x10100000 || defined(HAVE_LIBRESSL) +++#if OPENSSL_VERSION_NUMBER < 0x10100000 || (defined(HAVE_LIBRESSL) && LIBRESSL_VERSION_NUMBER < 0x20700000) ++ #ifndef S_SPLINT_S ++ dsa->p = P; ++ dsa->q = Q; ++@@ -468,7 +468,7 @@ ldns_key_buf2rsa_raw(const unsigned char* key, size_t len) ++ BN_free(modulus); ++ return NULL; ++ } ++-#if OPENSSL_VERSION_NUMBER < 0x10100000 || defined(HAVE_LIBRESSL) +++#if OPENSSL_VERSION_NUMBER < 0x10100000 || (defined(HAVE_LIBRESSL) && LIBRESSL_VERSION_NUMBER < 0x20700000) ++ #ifndef S_SPLINT_S ++ rsa->n = modulus; ++ rsa->e = exponent; ++diff --git a/host2str.c b/host2str.c ++index a207a913..634c5676 100644 ++--- host2str.c.orig +++++ host2str.c ++@@ -2451,7 +2451,7 @@ ldns_key2buffer_str(ldns_buffer *output, const ldns_key *k) ++ const BIGNUM *n=NULL, *e=NULL, *d=NULL, ++ *p=NULL, *q=NULL, *dmp1=NULL, ++ *dmq1=NULL, *iqmp=NULL; ++-#if OPENSSL_VERSION_NUMBER < 0x10100000 || defined(HAVE_LIBRESSL) +++#if OPENSSL_VERSION_NUMBER < 0x10100000 || (defined(HAVE_LIBRESSL) && LIBRESSL_VERSION_NUMBER < 0x20700000) ++ n = rsa->n; ++ e = rsa->e; ++ d = rsa->d; ++@@ -2504,7 +2504,7 @@ ldns_key2buffer_str(ldns_buffer *output, const ldns_key *k) ++ if(1) { ++ const BIGNUM *p=NULL, *q=NULL, *g=NULL, ++ *priv_key=NULL, *pub_key=NULL; ++-#if OPENSSL_VERSION_NUMBER < 0x10100000 || defined(HAVE_LIBRESSL) +++#if OPENSSL_VERSION_NUMBER < 0x10100000 || (defined(HAVE_LIBRESSL) && LIBRESSL_VERSION_NUMBER < 0x20700000) ++ #ifndef S_SPLINT_S ++ p = dsa->p; ++ q = dsa->q; ++diff --git a/keys.c b/keys.c ++index 91a3dffd..78bea972 100644 ++--- keys.c.orig +++++ keys.c ++@@ -861,7 +861,7 @@ ldns_key_new_frm_fp_rsa_l(FILE *f, int *line_nr) ++ } ++ #endif /* splint */ ++ ++-#if OPENSSL_VERSION_NUMBER < 0x10100000 || defined(HAVE_LIBRESSL) +++#if OPENSSL_VERSION_NUMBER < 0x10100000 || (defined(HAVE_LIBRESSL) && LIBRESSL_VERSION_NUMBER < 0x20700000) ++ # ifndef S_SPLINT_S ++ rsa->n = n; ++ rsa->e = e; ++@@ -982,7 +982,7 @@ ldns_key_new_frm_fp_dsa_l(FILE *f, ATTR_UNUSED(int *line_nr)) ++ } ++ #endif /* splint */ ++ ++-#if OPENSSL_VERSION_NUMBER < 0x10100000 || defined(HAVE_LIBRESSL) +++#if OPENSSL_VERSION_NUMBER < 0x10100000 || (defined(HAVE_LIBRESSL) && LIBRESSL_VERSION_NUMBER < 0x20700000) ++ # ifndef S_SPLINT_S ++ dsa->p = p; ++ dsa->q = q; ++@@ -1660,7 +1660,7 @@ ldns_key_rsa2bin(unsigned char *data, RSA *k, uint16_t *size) ++ if (!k) { ++ return false; ++ } ++-#if OPENSSL_VERSION_NUMBER < 0x10100000 || defined(HAVE_LIBRESSL) +++#if OPENSSL_VERSION_NUMBER < 0x10100000 || (defined(HAVE_LIBRESSL) && LIBRESSL_VERSION_NUMBER < 0x20700000) ++ n = k->n; ++ e = k->e; ++ #else