summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/etc/inc/interfaces.inc5
-rwxr-xr-xsrc/usr/local/www/interfaces.php15
2 files changed, 17 insertions, 3 deletions
diff --git a/src/etc/inc/interfaces.inc b/src/etc/inc/interfaces.inc
index 0787110..003738e 100644
--- a/src/etc/inc/interfaces.inc
+++ b/src/etc/inc/interfaces.inc
@@ -4407,10 +4407,11 @@ function DHCP6_Config_File_Advanced($interface, $wancfg, $wanif) {
}
$id_assoc_statement_prefix .= ";";
}
-
+
+ $realif = get_real_interface($wancfg['adv_dhcp6_prefix_selected_interface']);
if (is_numeric($wancfg['adv_dhcp6_prefix_interface_statement_sla_id'])) {
$id_assoc_statement_prefix .= "\n\tprefix-interface";
- $id_assoc_statement_prefix .= " {$wanif}";
+ $id_assoc_statement_prefix .= " {$realif}";
$id_assoc_statement_prefix .= " {\n";
$id_assoc_statement_prefix .= "\t\tsla-id {$wancfg['adv_dhcp6_prefix_interface_statement_sla_id']};\n";
if (($wancfg['adv_dhcp6_prefix_interface_statement_sla_len'] >= 0) &&
diff --git a/src/usr/local/www/interfaces.php b/src/usr/local/www/interfaces.php
index c8b034e..a5e1c14 100755
--- a/src/usr/local/www/interfaces.php
+++ b/src/usr/local/www/interfaces.php
@@ -90,6 +90,7 @@ if (!is_array($config['gateways']['gateway_item'])) {
$a_gateways = &$config['gateways']['gateway_item'];
+$interfaces = get_configured_interface_with_descr();
$wancfg = &$config['interfaces'][$if];
$old_wancfg = $wancfg;
$old_wancfg['realif'] = get_real_interface($if);
@@ -228,6 +229,7 @@ $pconfig['adv_dhcp6_id_assoc_statement_prefix_vltime'] = $wancfg['adv_dhcp6_id_a
$pconfig['adv_dhcp6_prefix_interface_statement_sla_id'] = $wancfg['adv_dhcp6_prefix_interface_statement_sla_id'];
$pconfig['adv_dhcp6_prefix_interface_statement_sla_len'] = $wancfg['adv_dhcp6_prefix_interface_statement_sla_len'];
+$pconfig['adv_dhcp6_prefix_selected_interface'] = $wancfg['adv_dhcp6_prefix_selected_interface'];
$pconfig['adv_dhcp6_authentication_statement_authname'] = $wancfg['adv_dhcp6_authentication_statement_authname'];
$pconfig['adv_dhcp6_authentication_statement_protocol'] = $wancfg['adv_dhcp6_authentication_statement_protocol'];
@@ -1093,6 +1095,7 @@ if ($_POST['apply']) {
unset($wancfg['adv_dhcp6_prefix_interface_statement_sla_id']);
unset($wancfg['adv_dhcp6_prefix_interface_statement_sla_len']);
+ unset($wancfg['adv_dhcp6_prefix_selected_interface']);
unset($wancfg['adv_dhcp6_authentication_statement_authname']);
unset($wancfg['adv_dhcp6_authentication_statement_protocol']);
@@ -1356,7 +1359,9 @@ if ($_POST['apply']) {
if (is_numericint($_POST['adv_dhcp6_prefix_interface_statement_sla_len'])) {
$wancfg['adv_dhcp6_prefix_interface_statement_sla_len'] = $_POST['adv_dhcp6_prefix_interface_statement_sla_len'];
}
-
+ if (!empty($_POST['adv_dhcp6_prefix_selected_interface'])) {
+ $wancfg['adv_dhcp6_prefix_selected_interface'] = $_POST['adv_dhcp6_prefix_selected_interface'];
+ }
if (!empty($_POST['adv_dhcp6_authentication_statement_authname'])) {
$wancfg['adv_dhcp6_authentication_statement_authname'] = $_POST['adv_dhcp6_authentication_statement_authname'];
}
@@ -2377,6 +2382,14 @@ $group->add(new Form_Input(
$section->add($group);
+$group = new Form_Group('Select prefix interface');
+$section->addInput(new Form_Select(
+ 'adv_dhcp6_prefix_selected_interface',
+ 'Prefix Interface',
+ $pconfig['adv_dhcp6_prefix_selected_interface'],
+ $interfaces
+))->setHelp('Select the interface on which to apply the prefix delegation.');
+
$group = new Form_Group('Authentication statement');
$group->add(new Form_Input(
OpenPOWER on IntegriCloud