summaryrefslogtreecommitdiffstats
path: root/usr
diff options
context:
space:
mode:
authorsmos <seth.mos@dds.nl>2012-06-02 21:27:03 +0200
committersmos <seth.mos@dds.nl>2012-06-02 21:27:03 +0200
commitab1112da4c1c8dc9c22486d0d69dca9cd1216cd2 (patch)
treefc740f00604e6cb79b46ccf5e018fdc7ad00d280 /usr
parent27a7980237460a5d459b53c7d63bb9b54af122b7 (diff)
downloadpfsense-ab1112da4c1c8dc9c22486d0d69dca9cd1216cd2.zip
pfsense-ab1112da4c1c8dc9c22486d0d69dca9cd1216cd2.tar.gz
The gateway groups array now knows about vips to be tied into that gateway group so we can tie the groups into services.
Redmine ticket #1965
Diffstat (limited to 'usr')
-rwxr-xr-xusr/local/www/system_gateway_groups_edit.php41
1 files changed, 26 insertions, 15 deletions
diff --git a/usr/local/www/system_gateway_groups_edit.php b/usr/local/www/system_gateway_groups_edit.php
index b37729d..242e9ea 100755
--- a/usr/local/www/system_gateway_groups_edit.php
+++ b/usr/local/www/system_gateway_groups_edit.php
@@ -46,6 +46,7 @@ if (!is_array($config['gateways']['gateway_group']))
$a_gateway_groups = &$config['gateways']['gateway_group'];
$a_gateways = return_gateways_array();
+$carplist = get_configured_carp_interface_list();
$categories = array('down' => gettext("Member Down"),
'downloss' => gettext("Packet Loss"),
@@ -179,6 +180,7 @@ include("head.inc");
if($gateway['ipprotocol'] != $family)
continue;
}
+ $interface = $gateway['friendlyiface'];
$selected = array();
foreach((array)$pconfig['item'] as $item) {
$itemsplit = explode("|", $item);
@@ -189,18 +191,18 @@ include("head.inc");
$selected[0] = "selected";
}
}
- echo "<tr>";
+ echo "<tr>\n";
echo "<td class='listlr'>";
echo "<strong>{$gateway['name']} </strong>";
echo "</td><td class='listr'>";
- echo "<select name='{$gwname}' class='formfldselect' id='{$gwname}'>";
- echo "<option value='0' $selected[0] >" . gettext("Never") . "</option>";
- echo "<option value='1' $selected[1] >" . gettext("Tier 1") . "</option>";
- echo "<option value='2' $selected[2] >" . gettext("Tier 2") . "</option>";
- echo "<option value='3' $selected[3] >" . gettext("Tier 3") . "</option>";
- echo "<option value='4' $selected[4] >" . gettext("Tier 4") . "</option>";
- echo "<option value='5' $selected[5] >" . gettext("Tier 5") . "</option>";
- echo "</select>";
+ echo "<select name='{$gwname}' class='formfldselect' id='{$gwname}'>\n";
+ echo "<option value='0' $selected[0] >" . gettext("Never") . "</option>\n";
+ echo "<option value='1' $selected[1] >" . gettext("Tier 1") . "</option>\n";
+ echo "<option value='2' $selected[2] >" . gettext("Tier 2") . "</option>\n";
+ echo "<option value='3' $selected[3] >" . gettext("Tier 3") . "</option>\n";
+ echo "<option value='4' $selected[4] >" . gettext("Tier 4") . "</option>\n";
+ echo "<option value='5' $selected[5] >" . gettext("Tier 5") . "</option>\n";
+ echo "</select>\n";
echo "</td>";
$selected = array();
@@ -210,15 +212,24 @@ include("head.inc");
$selected[$itemsplit[2]] = "selected";
break;
} else {
- $selected[0] = "selected";
+ $selected['address'] = "selected";
}
}
echo "<td class='listr'>";
- echo "<select name='{$gwname}_vip' class='formfldselect' id='{$gwname}_vip'>";
- echo "<option value='address' $selected[0] >" . gettext("Interface Address") . "</option>";
- // foreach($vips)
- echo "</td><td class='listr'>";
- echo "</select><strong>{$gateway['descr']}</strong>";
+ echo "<select name='{$gwname}_vip' class='formfldselect' id='{$gwname}_vip'>\n";
+ echo "<option value='address' {$selected['address']} >" . gettext("Interface Address") . "</option>\n";
+ foreach($carplist as $vip => $address) {
+ echo "<!-- $vip - $address - $interface -->\n";
+ if(!preg_match("/^{$interface}_/i", $vip))
+ continue;
+ if(($gateway['ipprotocol'] == "inet") && (!is_ipaddrv4($address)))
+ continue;
+ if(($gateway['ipprotocol'] == "inet6") && (!is_ipaddrv6($address)))
+ continue;
+ echo "<option value='{$vip}' $selected[$vip] >$vip - $address</option>\n";
+ }
+ echo "</select>";
+ echo "<td class='listr'><strong>{$gateway['descr']}</strong>";
echo "</td></tr>";
}
?>
OpenPOWER on IntegriCloud