]> git.ipfire.org Git - thirdparty/haproxy.git/commitdiff
MINOR: connection: remove pointers for prehash in conn_hash_params
authorAmaury Denoyelle <adenoyelle@haproxy.com>
Wed, 17 Feb 2021 15:25:31 +0000 (16:25 +0100)
committerAmaury Denoyelle <adenoyelle@haproxy.com>
Wed, 17 Feb 2021 15:43:07 +0000 (16:43 +0100)
Replace unneeded pointers for sni/proxy prehash by plain data type.
The code is slightly cleaner.

include/haproxy/connection-t.h
src/backend.c
src/connection.c

index 96b5611b29a700c30ff3b14cc81791a0c21701dd..77766c41dd403481ea5720b14801e7d0cec8c3c0 100644 (file)
@@ -493,10 +493,10 @@ enum conn_hash_params_t {
  */
 struct conn_hash_params {
        struct server *srv;
-       XXH64_hash_t *sni_prehash;
+       XXH64_hash_t sni_prehash;
        struct sockaddr_storage *src_addr;
        struct sockaddr_storage *dst_addr;
-       XXH64_hash_t *proxy_prehash;
+       XXH64_hash_t proxy_prehash;
 };
 
 /* This structure describes a connection with its methods and data.
index e2fa3c35a9ded1463a8b7a8300cb05903d97f1ca..b03da4a62e2a51d886b518e1f85027e0fe0df37f 100644 (file)
@@ -1272,10 +1272,6 @@ int connect_server(struct stream *s)
        int proxy_line_ret;
        int64_t hash = 0;
        struct conn_hash_params hash_params;
-#ifdef USE_OPENSSL
-       XXH64_hash_t sni_hash;
-#endif
-       XXH64_hash_t proxy_hash;
 
        /* first, set unique connection parameters and then calculate hash */
        memset(&hash_params, 0, sizeof(hash_params));
@@ -1295,9 +1291,9 @@ int connect_server(struct stream *s)
                 * not the case
                 */
                if (sni_smp) {
-                       sni_hash = conn_hash_prehash(sni_smp->data.u.str.area,
-                                                    sni_smp->data.u.str.data);
-                       hash_params.sni_prehash = &sni_hash;
+                       hash_params.sni_prehash =
+                         conn_hash_prehash(sni_smp->data.u.str.area,
+                                           sni_smp->data.u.str.data);
                }
        }
 #endif /* USE_OPENSSL */
@@ -1325,8 +1321,8 @@ int connect_server(struct stream *s)
        if (srv && srv->pp_opts) {
                proxy_line_ret = make_proxy_line(trash.area, trash.size, srv, cli_conn, s);
                if (proxy_line_ret) {
-                       proxy_hash = conn_hash_prehash(trash.area, proxy_line_ret);
-                       hash_params.proxy_prehash = &proxy_hash;
+                       hash_params.proxy_prehash =
+                         conn_hash_prehash(trash.area, proxy_line_ret);
                }
        }
 
index 002d6e75a60a23f644005b3c2ce7e7a72e6b547c..92633670e1ca18f1707004aa9c2a9a9b66decfd7 100644 (file)
@@ -1468,7 +1468,7 @@ XXH64_hash_t conn_calculate_hash(const struct conn_hash_params *params)
 
        if (params->sni_prehash) {
                conn_hash_update(buf, &idx,
-                                params->sni_prehash, sizeof(*params->sni_prehash),
+                                &params->sni_prehash, sizeof(params->sni_prehash),
                                 &hash_flags, CONN_HASH_PARAMS_TYPE_SNI);
        }
 
@@ -1488,7 +1488,7 @@ XXH64_hash_t conn_calculate_hash(const struct conn_hash_params *params)
 
        if (params->proxy_prehash) {
                conn_hash_update(buf, &idx,
-                                params->proxy_prehash, sizeof(*params->proxy_prehash),
+                                &params->proxy_prehash, sizeof(params->proxy_prehash),
                                 &hash_flags, CONN_HASH_PARAMS_TYPE_PROXY);
        }