|
commit f9c40ed93330c9add953310b7ac04a0d4f43ec5c
|
|
Author: Daniel Jakots <haproxy@chown.me>
|
|
Date: Tue Dec 7 20:34:39 2021 -0500
|
|
|
|
BUILD: ssl: 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.
|
|
|
|
(cherry picked from commit d1a2e2b0d1da0dff726738343fbaed044fb93470)
|
|
Signed-off-by: Willy Tarreau <w@1wt.eu>
|
|
(cherry picked from commit ca0b6e08dcc3686794d37e8bfcc4e4a4b2adb806)
|
|
Signed-off-by: Willy Tarreau <w@1wt.eu>
|
|
|
|
--- a/include/haproxy/openssl-compat.h
|
|
+++ b/include/haproxy/openssl-compat.h
|
|
@@ -386,7 +386,7 @@ static inline void SSL_CTX_up_ref(SSL_CT
|
|
#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)
|