aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorthompsa <andy@fud.org.nz>2010-02-08 00:02:31 +1300
committerthompsa <andy@fud.org.nz>2010-02-08 00:21:14 +1300
commitcacd273abbf3c0100f94bd59a6018593744c7b2c (patch)
treebd233b0355ad3c6750c9816194d1ca368a3a4ba6
parent51f497343aaff857e82115a27db9010435a43105 (diff)
downloadpfsense-packages-cacd273abbf3c0100f94bd59a6018593744c7b2c.tar.gz
pfsense-packages-cacd273abbf3c0100f94bd59a6018593744c7b2c.tar.bz2
pfsense-packages-cacd273abbf3c0100f94bd59a6018593744c7b2c.zip
Update the listener if the pool name changes.
-rwxr-xr-xconfig/haproxy-dev/haproxy_listeners_edit.php37
-rwxr-xr-xconfig/haproxy-dev/haproxy_pool_edit.php25
2 files changed, 13 insertions, 49 deletions
diff --git a/config/haproxy-dev/haproxy_listeners_edit.php b/config/haproxy-dev/haproxy_listeners_edit.php
index 91635260..67218022 100755
--- a/config/haproxy-dev/haproxy_listeners_edit.php
+++ b/config/haproxy-dev/haproxy_listeners_edit.php
@@ -190,43 +190,6 @@ if ($_POST) {
if($backend['name'] != "")
$changedesc .= " modified '{$backend['name']}' pool:";
- if ($backend['name']!=$_POST['name']) {
- // name changed:
- // * update servers
- // * update frontend (default backend and acl)
- if (!is_array($config['installedpackages']['haproxy']['ha_servers']['item'])) {
- $config['installedpackages']['haproxy']['ha_servers']['item'] = array();
- }
- $a_server = &$config['installedpackages']['haproxy']['ha_servers']['item'];
-
- for ( $i = 0; $i < count($a_server); $i++) {
- if ($a_server[$i]['backend']==$backend['name']) {
- $a_server[$i]['backend']=$_POST['name'];
- }
- }
-
- if (!is_array($config['installedpackages']['haproxy']['ha_frontends']['item'])) {
- $config['installedpackages']['haproxy']['ha_frontends']['item'] = array();
- }
- $a_frontend = &$config['installedpackages']['haproxy']['ha_frontends']['item'];
-
- for ( $i = 0; $i < count($a_frontend); $i++) {
- if ($a_frontend[$i]['backend']==$backend['name']) {
- $a_frontend[$i]['backend']=$_POST['name'];
- }
-
- if (!is_array($a_frontend[$i]['ha_acls']['item'])) {
- $a_frontend[$i]['ha_acls']['item'] = array();
- }
-
- $a_acl = &$a_frontend[$i]['ha_acls']['item'];
- for ( $j = 0; $j < count($a_acl); $j++) {
- if ($a_acl[$j]['backend']==$backend['name']) {
- $a_acl[$j]['backend']=$_POST['name'];
- }
- }
- }
- }
update_if_changed("name", $backend['name'], $_POST['name']);
update_if_changed("description", $backend['desc'], $_POST['desc']);
diff --git a/config/haproxy-dev/haproxy_pool_edit.php b/config/haproxy-dev/haproxy_pool_edit.php
index 9044e930..8a006a29 100755
--- a/config/haproxy-dev/haproxy_pool_edit.php
+++ b/config/haproxy-dev/haproxy_pool_edit.php
@@ -32,7 +32,6 @@
require("guiconfig.inc");
$d_haproxyconfdirty_path = $g['varrun_path'] . "/haproxy.conf.dirty";
-$a_backend = &$config['installedpackages']['haproxy']['ha_backends']['item'];
if (!is_array($config['installedpackages']['haproxy']['ha_pools']['item'])) {
$config['installedpackages']['haproxy']['ha_pools']['item'] = array();
@@ -105,6 +104,19 @@ if ($_POST) {
if(isset($id) && $a_pools[$id])
$pool = $a_pools[$id];
+ if ($pool['name'] != $_POST['name']) {
+ // name changed:
+ if (!is_array($config['installedpackages']['haproxy']['ha_backends']['item'])) {
+ $config['installedpackages']['haproxy']['ha_backends']['item'] = array();
+ }
+ $a_backend = &$config['installedpackages']['haproxy']['ha_backends']['item'];
+
+ for ( $i = 0; $i < count($a_backend); $i++) {
+ if ($a_backend[$i]['pool'] == $pool['name'])
+ $a_backend[$i]['pool'] = $_POST['name'];
+ }
+ }
+
if($pool['name'] != "")
$changedesc .= " modified '{$pool['name']}' pool:";
@@ -292,17 +304,6 @@ function clearcombo(){
<?php
function row_helper() {
- global $pconfig, $a_backend;
- $options = "";
- foreach ($a_backend as $backend) {
- $options .= "<option value='{$backend['name']}'";
- if($backend['name'] == $pconfig['backend'])
- $options .= "SELECTED";
- $options .= ">";
- $options .= $backend['name'];
- $options .= "</option>";
- }
-
echo <<<EOF
<script type="text/javascript">
// Global Variables