From c6a8279cdfc3272e34feb256ed9e4601e0a104db Mon Sep 17 00:00:00 2001 From: William Lallemand Date: Tue, 28 Jan 2025 18:27:31 +0100 Subject: [PATCH] BUILD: ssl: allow to build without the renegotiation API of WolfSSL In ticket https://github.com/wolfSSL/wolfssl/issues/6834, it was suggested to push --enable-haproxy within --enable-distro. WolfSSL does not want to include the renegotiation support in --enable-distro. To achieve this, let haproxy build without SSL_renegotiate_pending() when wolfssl does not define HAVE_SECURE_RENEGOCIATION or HAVE_SERVER_RENEGOCIATION_INFO. --- include/haproxy/openssl-compat.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/include/haproxy/openssl-compat.h b/include/haproxy/openssl-compat.h index 8250c2d17..adbe284a2 100644 --- a/include/haproxy/openssl-compat.h +++ b/include/haproxy/openssl-compat.h @@ -417,7 +417,8 @@ static inline unsigned long ERR_peek_error_func(const char **func) #define SSL_OP_CIPHER_SERVER_PREFERENCE 0 #endif -#ifndef SSL_OP_NO_SESSION_RESUMPTION_ON_RENEGOTIATION /* needs OpenSSL >= 0.9.7 */ +/* needs OpenSSL >= 0.9.7 and renegotation options on WolfSSL */ +#if !defined(SSL_OP_NO_SESSION_RESUMPTION_ON_RENEGOTIATION) && !defined(HAVE_SECURE_RENEGOTIATION) && !defined(HAVE_SERVER_RENEGOTIATION_INFO) #define SSL_OP_NO_SESSION_RESUMPTION_ON_RENEGOTIATION 0 #define SSL_renegotiate_pending(arg) 0 #endif -- 2.47.3