MEDIUM: checks: Add a shared list of tcp-check rules

A global list to tcp-check ruleset can now be used to share common rulesets with
all backends without any duplication. It is mandatory to convert all specific
protocol checks (redis, pgsql...) to tcp-check healthchecks.

To do so, a flag is now attached to each tcp-check ruleset to know if it is a
shared ruleset or not. tcp-check rules defined in a backend are still directly
attached to the proxy and not shared. In addition a second flag is used to know
if the ruleset is inherited from the defaults section.
diff --git a/src/cfgparse.c b/src/cfgparse.c
index 1391033..6bd8160 100644
--- a/src/cfgparse.c
+++ b/src/cfgparse.c
@@ -3133,7 +3133,7 @@
 			memcpy(curproxy->check_req, sslv3_client_hello_pkt, curproxy->check_len);
 		}
 
-		if (curproxy->tcpcheck_rules != NULL &&
+		if (curproxy->tcpcheck_rules.list != NULL &&
 		    (curproxy->options2 & PR_O2_CHK_ANY) != PR_O2_TCPCHK_CHK) {
 			ha_warning("config : %s '%s' uses tcp-check rules without 'option tcp-check', so the rules are ignored.\n",
 				   proxy_type_str(curproxy), curproxy->id);