summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--etc/inc/gwlb.inc7
-rwxr-xr-xusr/local/www/system_gateways_edit.php4
2 files changed, 8 insertions, 3 deletions
diff --git a/etc/inc/gwlb.inc b/etc/inc/gwlb.inc
index fcffdc2..0c8b3b7 100644
--- a/etc/inc/gwlb.inc
+++ b/etc/inc/gwlb.inc
@@ -275,6 +275,7 @@ function return_gateways_array($disabled = false) {
if(! is_ipaddr($gateway['gateway'])) {
$gateway['gateway'] = "dynamic";
}
+ $gateway['dynamic'] = true;
}
if($gateway['monitor'] == "") {
$gateway['monitor'] = $gateway['gateway'];
@@ -292,7 +293,8 @@ function return_gateways_array($disabled = false) {
continue;
}
$gateway = array();
- $gateway['gateway'] = get_interface_gateway($ifname);
+ $gateway['dynamic'] = false;
+ $gateway['gateway'] = get_interface_gateway($ifname, $gateway['dynamic']);
$gateway['interface'] = get_real_interface($ifname);
$gateway['name'] = "{$ifname}";
$gateway['attribute'] = "system";
@@ -494,7 +496,7 @@ function lookup_gateway_interface_by_name($name) {
return(false);
}
-function get_interface_gateway($interface) {
+function get_interface_gateway($interface, &$dynamic = false) {
global $config, $g;
$iflist = get_configured_interface_with_descr();
@@ -524,6 +526,7 @@ function get_interface_gateway($interface) {
if (file_exists("{$g['tmp_path']}/{$realif}_router")) {
$gw = file_get_contents("{$g['tmp_path']}/{$realif}_router");
$gw = rtrim($gw);
+ $dynamic = true;
}
}
diff --git a/usr/local/www/system_gateways_edit.php b/usr/local/www/system_gateways_edit.php
index 9b26c9c..9b0b244 100755
--- a/usr/local/www/system_gateways_edit.php
+++ b/usr/local/www/system_gateways_edit.php
@@ -67,6 +67,8 @@ if (isset($id) && $a_gateways[$id]) {
$pconfig['interface'] = $a_gateways[$id]['interface'];
$pconfig['gateway'] = $a_gateways[$id]['gateway'];
$pconfig['defaultgw'] = $a_gateways[$id]['defaultgw'];
+ if (isset($a_gateways[$id]['dynamic']))
+ $pconfig['dynamic'] = true;
if($a_gateway_item[$id]['monitor'] <> "") {
$pconfig['monitor'] = $a_gateway_item[$id]['monitor'];
} else {
@@ -258,7 +260,7 @@ include("head.inc");
$gateway = htmlspecialchars($pconfig['gateway']);
}
?>
- <input name="gateway" type="text" class="formfld host" id="gateway" size="40" value="<?php echo $gateway; ?>">
+ <input name="gateway" type="text" class="formfld host" id="gateway" size="40" value="<?php echo $gateway; ?>" <?php if ($pconfig['dynamic'] == true) echo "disabled"; ?>>
<br> <span class="vexpl">Gateway IP address</span></td>
</tr>
<tr>
OpenPOWER on IntegriCloud