MEDIUM: checks: Add a list of vars to set before executing a tpc-check ruleset

A list of variables is now associated to each tcp-check ruleset. It is more a
less a list of set-var expressions. This list may be filled during the
configuration parsing. The listed variables will then be set during each
execution of the tcp-check healthcheck, at the begining, before execution of the
the first tcp-check rule.

This patch is mandatory to convert all protocol checks to tcp-checks. It is a
way to customize shared tcp-check rulesets.
diff --git a/include/types/checks.h b/include/types/checks.h
index 94ce5f2..c44fe8e 100644
--- a/include/types/checks.h
+++ b/include/types/checks.h
@@ -302,10 +302,18 @@
 #define TCPCHK_RULES_SHARED 0x00000001 /* Set for shared list of tcp-check rules */
 #define TCPCHK_RULES_DEF    0x00000002 /* Ruleset inherited from the default section */
 
+/* A list of tcp-check vars, to be registered before executing a ruleset */
+struct tcpcheck_var {
+	struct ist name;         /* the variable name with the scope */
+	struct sample_data data; /* the data associated to the variable */
+	struct list list;        /* element to chain tcp-check vars */
+};
+
 /* a list of tcp-check rules */
 struct tcpcheck_rules {
-	unsigned int flags; /* flags applied to the rules */
-	struct list *list; /* the list of tcpcheck_rules */
+	unsigned int flags;       /* flags applied to the rules */
+	struct list *list;        /* the list of tcpcheck_rules */
+	struct list  preset_vars; /* The list of variable to preset before executing the ruleset */
 };
 
 /* A list of tcp-check rules with a name */