]> git.ipfire.org Git - thirdparty/haproxy.git/commitdiff
BUILD: ssl: use HAVE_OPENSSL_KEYLOG instead of OpenSSL versions
authorIlya Shipitsin <chipitsine@gmail.com>
Tue, 3 Nov 2020 09:15:38 +0000 (14:15 +0500)
committerWilliam Lallemand <wlallemand@haproxy.org>
Tue, 3 Nov 2020 13:54:15 +0000 (14:54 +0100)
let us use HAVE_OPENSSL_KEYLOG for feature detection instead
of versions

include/haproxy/ssl_sock-t.h
src/cfgparse-ssl.c
src/ssl_sample.c
src/ssl_sock.c

index 5b537fabacc8395f085a40609c070d1b1c995b8e..c8c8616ea4f30599c96466ebab37e73e8af6c732 100644 (file)
@@ -226,7 +226,7 @@ struct ssl_capture {
        char ciphersuite[VAR_ARRAY];
 };
 
-#if (HA_OPENSSL_VERSION_NUMBER >= 0x10101000L)
+#ifdef HAVE_OPENSSL_KEYLOG
 #define SSL_KEYLOG_MAX_SECRET_SIZE 129
 
 struct ssl_keylog {
index 3bac5f9dc5abb992c528ebf204a24885ef9f97f0..fcf2b163aa0a576caaa9c0ba55cdcbaa28464067 100644 (file)
@@ -318,7 +318,7 @@ static int ssl_parse_global_capture_cipherlist(char **args, int section_type, st
 }
 
 /* init the SSLKEYLOGFILE pool */
-#if (HA_OPENSSL_VERSION_NUMBER >= 0x10101000L)
+#ifdef HAVE_OPENSSL_KEYLOG
 static int ssl_parse_global_keylog(char **args, int section_type, struct proxy *curpx,
                                        struct proxy *defpx, const char *file, int line,
                                        char **err)
@@ -1872,7 +1872,7 @@ static struct cfg_kw_list cfg_kws = {ILH, {
        { CFG_GLOBAL, "tune.ssl.maxrecord", ssl_parse_global_int },
        { CFG_GLOBAL, "tune.ssl.ssl-ctx-cache-size", ssl_parse_global_int },
        { CFG_GLOBAL, "tune.ssl.capture-cipherlist-size", ssl_parse_global_capture_cipherlist },
-#if (HA_OPENSSL_VERSION_NUMBER >= 0x10101000L)
+#ifdef HAVE_OPENSSL_KEYLOG
        { CFG_GLOBAL, "tune.ssl.keylog", ssl_parse_global_keylog },
 #endif
        { CFG_GLOBAL, "ssl-default-bind-ciphers", ssl_parse_global_ciphers },
index 46f5450b649d303fde92a4cea256408aec6860a7..10c40a904b88eeee4c9b9c711ecd1c92adc1b348 100644 (file)
@@ -1189,7 +1189,7 @@ smp_fetch_ssl_fc_cl_xxh64(const struct arg *args, struct sample *smp, const char
 }
 
 /* Dump the SSL keylog, it only works with "tune.ssl.keylog 1" */
-#if (HA_OPENSSL_VERSION_NUMBER >= 0x10101000L)
+#ifdef HAVE_OPENSSL_KEYLOG
 static int smp_fetch_ssl_x_keylog(const struct arg *args, struct sample *smp, const char *kw, void *private)
 {
        struct connection *conn;
@@ -1520,7 +1520,7 @@ static struct sample_fetch_kw_list sample_fetch_keywords = {ILH, {
        { "ssl_fc_session_key",     smp_fetch_ssl_fc_session_key, 0,                   NULL,    SMP_T_BIN,  SMP_USE_L5CLI },
 #endif
 
-#if (HA_OPENSSL_VERSION_NUMBER >= 0x10101000L)
+#ifdef HAVE_OPENSSL_KEYLOG
        { "ssl_fc_client_early_traffic_secret",     smp_fetch_ssl_x_keylog,       0,   NULL,    SMP_T_STR,  SMP_USE_L5CLI },
        { "ssl_fc_client_handshake_traffic_secret", smp_fetch_ssl_x_keylog,       0,   NULL,    SMP_T_STR,  SMP_USE_L5CLI },
        { "ssl_fc_server_handshake_traffic_secret", smp_fetch_ssl_x_keylog,       0,   NULL,    SMP_T_STR,  SMP_USE_L5CLI },
index e3f8c4c7374d415da3045ebaf5f287dc1699c615..57e5f5afe5512501a91eb785a738ac1baa7dabe3 100644 (file)
@@ -130,7 +130,7 @@ struct global_ssl global_ssl = {
        .capture_cipherlist = 0,
        .extra_files = SSL_GF_ALL,
        .extra_files_noext = 0,
-#if (HA_OPENSSL_VERSION_NUMBER >= 0x10101000L)
+#ifdef HAVE_OPENSSL_KEYLOG
        .keylog = 0
 #endif
 };
@@ -437,7 +437,7 @@ struct pool_head *pool_head_ssl_capture = NULL;
 int ssl_capture_ptr_index = -1;
 static int ssl_app_data_index = -1;
 
-#if (HA_OPENSSL_VERSION_NUMBER >= 0x10101000L)
+#ifdef HAVE_OPENSSL_KEYLOG
 int ssl_keylog_index = -1;
 struct pool_head *pool_head_ssl_keylog = NULL;
 struct pool_head *pool_head_ssl_keylog_str = NULL;
@@ -513,7 +513,7 @@ static void ssl_sock_parse_clienthello(struct connection *conn, int write_p, int
                                        int content_type, const void *buf, size_t len,
                                        SSL *ssl);
 
-#if (HA_OPENSSL_VERSION_NUMBER >= 0x10101000L)
+#ifdef HAVE_OPENSSL_KEYLOG
 static void ssl_init_keylog(struct connection *conn, int write_p, int version,
                             int content_type, const void *buf, size_t len,
                             SSL *ssl);
@@ -558,7 +558,7 @@ static int ssl_sock_register_msg_callbacks(void)
                if (!ssl_sock_register_msg_callback(ssl_sock_parse_clienthello))
                        return ERR_ABORT;
        }
-#if (HA_OPENSSL_VERSION_NUMBER >= 0x10101000L)
+#ifdef HAVE_OPENSSL_KEYLOG
        if (global_ssl.keylog > 0) {
                if (!ssl_sock_register_msg_callback(ssl_init_keylog))
                        return ERR_ABORT;
@@ -1734,7 +1734,7 @@ static void ssl_sock_parse_clienthello(struct connection *conn, int write_p, int
 }
 
 
-#if (HA_OPENSSL_VERSION_NUMBER >= 0x10101000L)
+#ifdef HAVE_OPENSSL_KEYLOG
 static void ssl_init_keylog(struct connection *conn, int write_p, int version,
                             int content_type, const void *buf, size_t len,
                             SSL *ssl)
@@ -3919,7 +3919,7 @@ void ssl_set_shctx(SSL_CTX *ctx)
  * We only need to copy the secret as there is a sample fetch for the ClientRandom
  */
 
-#if (HA_OPENSSL_VERSION_NUMBER >= 0x10101000L)
+#ifdef HAVE_OPENSSL_KEYLOG
 void SSL_CTX_keylog(const SSL *ssl, const char *line)
 {
        struct ssl_keylog *keylog;
@@ -4155,7 +4155,7 @@ int ssl_sock_prepare_ctx(struct bind_conf *bind_conf, struct ssl_bind_conf *ssl_
 #if HA_OPENSSL_VERSION_NUMBER >= 0x00907000L
        SSL_CTX_set_msg_callback(ctx, ssl_sock_msgcbk);
 #endif
-#if (HA_OPENSSL_VERSION_NUMBER >= 0x10101000L)
+#ifdef HAVE_OPENSSL_KEYLOG
        SSL_CTX_set_keylog_callback(ctx, SSL_CTX_keylog);
 #endif
 
@@ -6598,7 +6598,7 @@ static void ssl_sock_capture_free_func(void *parent, void *ptr, CRYPTO_EX_DATA *
        pool_free(pool_head_ssl_capture, ptr);
 }
 
-#if (HA_OPENSSL_VERSION_NUMBER >= 0x10101000L)
+#ifdef HAVE_OPENSSL_KEYLOG
 static void ssl_sock_keylog_free_func(void *parent, void *ptr, CRYPTO_EX_DATA *ad, int idx, long argl, void *argp)
 {
        struct ssl_keylog *keylog;
@@ -6665,7 +6665,7 @@ static void __ssl_sock_init(void)
 
        ssl_app_data_index = SSL_get_ex_new_index(0, NULL, NULL, NULL, NULL);
        ssl_capture_ptr_index = SSL_get_ex_new_index(0, NULL, NULL, NULL, ssl_sock_capture_free_func);
-#if (HA_OPENSSL_VERSION_NUMBER >= 0x10101000L)
+#ifdef HAVE_OPENSSL_KEYLOG
        ssl_keylog_index = SSL_get_ex_new_index(0, NULL, NULL, NULL, ssl_sock_keylog_free_func);
 #endif
 #ifndef OPENSSL_NO_ENGINE