]> git.ipfire.org Git - thirdparty/haproxy.git/commitdiff
BUG/MINOR: tcpheck: the source list must be a const in dup_tcpcheck_var()
authorWilly Tarreau <w@1wt.eu>
Fri, 12 Feb 2021 07:42:30 +0000 (08:42 +0100)
committerWilly Tarreau <w@1wt.eu>
Fri, 12 Feb 2021 15:23:46 +0000 (16:23 +0100)
This is just an API bug but it's annoying when trying to tidy the code.
The source list passed in argument must be a const and not a variable,
as it's typically the list head from a default proxy and must obviously
not be modified by the function. No backport is needed as it only impacts
new code.

include/haproxy/tcpcheck.h
src/tcpcheck.c

index a8a36a70914824b372133fbf41f72179993e82be..29b4c9b2114cacbea15e8a732c89373b41de99a5 100644 (file)
@@ -47,7 +47,7 @@ void deinit_proxy_tcpcheck(struct proxy *px);
 
 struct tcpcheck_var *create_tcpcheck_var(const struct ist name);
 void free_tcpcheck_var(struct tcpcheck_var *var);
-int dup_tcpcheck_vars(struct list *dst, struct list *src);
+int dup_tcpcheck_vars(struct list *dst, const struct list *src);
 void free_tcpcheck_vars(struct list *vars);
 
 int add_tcpcheck_expect_str(struct tcpcheck_rules *rules, const char *str);
index 02c86afbc934e03e5aa41ca2bd56404c792de5b2..94ba28f3e6e5edf86f0c63a1b1436b5e90b2402b 100644 (file)
@@ -254,9 +254,10 @@ void free_tcpcheck_vars(struct list *vars)
 }
 
 /* Duplicate a list of preset tcp-check variables */
-int dup_tcpcheck_vars(struct list *dst, struct list *src)
+int dup_tcpcheck_vars(struct list *dst, const struct list *src)
 {
-       struct tcpcheck_var *var, *new = NULL;
+       const struct tcpcheck_var *var;
+       struct tcpcheck_var *new = NULL;
 
        list_for_each_entry(var, src, list) {
                new = create_tcpcheck_var(var->name);