From: Ilya Shipitsin Date: Fri, 22 Jan 2021 19:09:14 +0000 (+0500) Subject: BUILD: ssl: guard Client Hello callbacks with HAVE_SSL_CLIENT_HELLO_CB macro instead... X-Git-Tag: v2.4-dev7~152 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=1fc44d4;p=thirdparty%2Fhaproxy.git BUILD: ssl: guard Client Hello callbacks with HAVE_SSL_CLIENT_HELLO_CB macro instead of openssl version let us introduce new macro HAVE_SSL_CLIENT_HELLO_CB and guard callback functions with it --- diff --git a/include/haproxy/openssl-compat.h b/include/haproxy/openssl-compat.h index 3cba3627f5..b4af429cf0 100644 --- a/include/haproxy/openssl-compat.h +++ b/include/haproxy/openssl-compat.h @@ -45,6 +45,10 @@ #define HAVE_SSL_CTX_SET_CIPHERSUITES #endif +#if (defined(SSL_CLIENT_HELLO_CB) || defined(OPENSSL_IS_BORINGSSL)) +#define HAVE_SSL_CLIENT_HELLO_CB +#endif + #if ((OPENSSL_VERSION_NUMBER >= 0x1000200fL) && !defined(OPENSSL_NO_TLSEXT) && !defined(LIBRESSL_VERSION_NUMBER) && !defined(OPENSSL_IS_BORINGSSL)) #define HAVE_SL_CTX_ADD_SERVER_CUSTOM_EXT #endif diff --git a/include/haproxy/ssl_sock.h b/include/haproxy/ssl_sock.h index ebfdb19ab3..c52d99144f 100644 --- a/include/haproxy/ssl_sock.h +++ b/include/haproxy/ssl_sock.h @@ -92,7 +92,7 @@ int ssl_sock_load_global_dh_param_from_file(const char *filename); void ssl_free_dh(void); #endif void ssl_free_engines(void); -#if ((HA_OPENSSL_VERSION_NUMBER >= 0x10101000L) || defined(OPENSSL_IS_BORINGSSL)) +#ifdef HAVE_SSL_CLIENT_HELLO_CB int ssl_sock_switchctx_err_cbk(SSL *ssl, int *al, void *priv); #ifdef OPENSSL_IS_BORINGSSL int ssl_sock_switchctx_cbk(const struct ssl_early_callback_ctx *ctx); diff --git a/src/ssl_sock.c b/src/ssl_sock.c index 611ecce4d9..24a38e47d3 100644 --- a/src/ssl_sock.c +++ b/src/ssl_sock.c @@ -2291,7 +2291,7 @@ static void ssl_sock_switchctx_set(SSL *ssl, SSL_CTX *ctx) SSL_set_SSL_CTX(ssl, ctx); } -#if ((HA_OPENSSL_VERSION_NUMBER >= 0x10101000L) || defined(OPENSSL_IS_BORINGSSL)) +#ifdef HAVE_SSL_CLIENT_HELLO_CB int ssl_sock_switchctx_err_cbk(SSL *ssl, int *al, void *priv) {