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.
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);
}
/* 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);