From ba976e783054c7e8d5d1c22f95684bb98088f124 Mon Sep 17 00:00:00 2001 From: thompsa Date: Mon, 8 Feb 2010 13:20:34 +1300 Subject: Provide a fallback if both the pool and listener do not supply port numbers. --- config/haproxy-dev/haproxy.inc | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'config/haproxy-dev') diff --git a/config/haproxy-dev/haproxy.inc b/config/haproxy-dev/haproxy.inc index ba39e5c9..b5f62c4f 100644 --- a/config/haproxy-dev/haproxy.inc +++ b/config/haproxy-dev/haproxy.inc @@ -271,8 +271,15 @@ function haproxy_configure() { $checkinter = "check inter 1000"; $a_servers = &$pool['ha_servers']['item']; foreach($a_servers as $be) { - if(!$be['port']) + if(!$be['port']) { + // the listener can specify a default port $be['port'] = $backend['svrport']; + } + if(!$be['port']) { + // last resort, use the frontend port + $ports = split(",", "{$backend['port']},"); + $be['port'] = $ports[0]; + } if (!$be['name']) $be['name'] = $be['address']; fwrite ($fd, "\tserver\t\t\t" . $be['name'] . " " . $be['address'].":" . $be['port'] . " $cookie " . " $checkinter weight " . $be['weight'] . "{$advanced_txt}\n"); -- cgit v1.2.3