Hi,

Here's the file inline generated with `git format-patch -1`. Is it ok?

I'm not subscribed to the mailing list, please keep me in Cc:.

Thanks,
Daniel

From bc44099cb32a95d3a8895a6232b5b0ce5c9cb5c0 Mon Sep 17 00:00:00 2001
From: Daniel Jakots <[email protected]>
Date: Sun, 5 Dec 2021 17:30:57 -0500
Subject: [PATCH] BUILD: unbreak the build with newer libressl

In LibreSSL 3.5.0, BIO is going to become opaque, so haproxy's
compat macros will no longer work. The functions they substitute
have been available since LibreSSL 2.7.0.
---
 include/haproxy/openssl-compat.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/include/haproxy/openssl-compat.h b/include/haproxy/openssl-compat.h
index 17d073d51..123b76ede 100644
--- a/include/haproxy/openssl-compat.h
+++ b/include/haproxy/openssl-compat.h
@@ -417,7 +417,7 @@ static inline X509 *X509_STORE_CTX_get0_cert(X509_STORE_CTX 
*ctx)
 #define SSL_CTX_get_extra_chain_certs(ctx, chain) do { *(chain) = 
(ctx)->extra_certs; } while (0)
 #endif
 
-#if HA_OPENSSL_VERSION_NUMBER < 0x10100000L
+#if HA_OPENSSL_VERSION_NUMBER < 0x10100000L && 
(!defined(LIBRESSL_VERSION_NUMBER) || LIBRESSL_VERSION_NUMBER < 0x2070000fL)
 #define BIO_get_data(b)            (b)->ptr
 #define BIO_set_data(b, v)         do { (b)->ptr  = (v); } while (0)
 #define BIO_set_init(b, v)         do { (b)->init = (v); } while (0)
-- 
2.32.0


Reply via email to