mirror of
http://git.haproxy.org/git/haproxy.git/
synced 2025-03-31 23:58:16 +00:00
MINOR: config: Finish configuration for referenced default proxies
If a not-ready default proxy is referenced by a proxy during the configuration validity check, its configuration is also finished and PR_FL_READY flag is set on it. For now, the arguments resolution is the only step performed. This patch is mandatory to support TCP/HTTP rules in defaults sections.
This commit is contained in:
parent
56717803e1
commit
ff556276eb
@ -2514,6 +2514,28 @@ int check_config_validity()
|
||||
continue;
|
||||
}
|
||||
|
||||
/* The current proxy is referencing a default proxy. We must
|
||||
* finalize its config, but only once. If the default proxy is
|
||||
* ready (PR_FL_READY) it means it was already fully configured.
|
||||
*/
|
||||
if (curproxy->defpx) {
|
||||
if (!(curproxy->defpx->flags & PR_FL_READY)) {
|
||||
err = NULL;
|
||||
i = smp_resolve_args(curproxy->defpx, &err);
|
||||
cfgerr += i;
|
||||
if (i) {
|
||||
indent_msg(&err, 8);
|
||||
ha_alert("%s%s\n", i > 1 ? "multiple argument resolution errors:" : "", err);
|
||||
ha_free(&err);
|
||||
}
|
||||
else
|
||||
cfgerr += acl_find_targets(curproxy->defpx);
|
||||
|
||||
/* default proxy is now ready. Set the right FE/BE capabilities */
|
||||
curproxy->defpx->flags |= PR_FL_READY;
|
||||
}
|
||||
}
|
||||
|
||||
/* check and reduce the bind-proc of each listener */
|
||||
list_for_each_entry(bind_conf, &curproxy->conf.bind, by_fe) {
|
||||
unsigned long mask;
|
||||
|
Loading…
Reference in New Issue
Block a user