From: Cyril Bonté Date: Thu, 2 Oct 2014 17:56:25 +0000 (+0200) Subject: BUG/MINOR: config: don't propagate process binding for dynamic use_backend X-Git-Tag: v1.6-dev1~301 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=51639696e0a112ea3612e905a5722ad912b3869f;p=thirdparty%2Fhaproxy.git BUG/MINOR: config: don't propagate process binding for dynamic use_backend A segfault was reported with the introduction of the propagate_processes() function. It was caused when a use_backend rule was declared with a dynamic name, using a log-format string. The backend is not resolved during the configuration, which lead to the segfault. The patch prevents the process binding propagation for such dynamic rules, it should also be backported to 1.5. --- diff --git a/src/cfgparse.c b/src/cfgparse.c index a5af90b24a..72f3d92352 100644 --- a/src/cfgparse.c +++ b/src/cfgparse.c @@ -6067,6 +6067,8 @@ void propagate_processes(struct proxy *from, struct proxy *to) /* use_backend */ list_for_each_entry(rule, &from->switching_rules, list) { + if (rule->dynamic) + continue; to = rule->be.backend; propagate_processes(from, to); }