diff options
author | Daniel Becker <razzfazz@gmail.com> | 2013-09-02 17:34:30 -0700 |
---|---|---|
committer | Daniel Becker <razzfazz@gmail.com> | 2013-09-03 02:05:52 -0700 |
commit | 18f3c2fd09e313a1593f71c95627636aac669825 (patch) | |
tree | 6a12326b06e3fb72d483ca5dc06d915a1d4ab201 /usr | |
parent | 324e112d0634226a34f377eb21f279e028d6c266 (diff) | |
download | pfsense-18f3c2fd09e313a1593f71c95627636aac669825.zip pfsense-18f3c2fd09e313a1593f71c95627636aac669825.tar.gz |
add option to send prefix hint for requesting desired prefix length for delegation
This change adds an option on the interfaces page for sending a prefix hint for the selected delegation size. If enabled, a "prefix" field requesting :: with the appropriate prefix length (64 - dhcp6-ia-pd-len) is added to the "id-assoc pd" entry in the dhcp6c config file. This hint is required for requesting prefixes shorter than /64 from Comcast.
Diffstat (limited to 'usr')
-rwxr-xr-x | usr/local/www/interfaces.php | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/usr/local/www/interfaces.php b/usr/local/www/interfaces.php index 62931cd..9d32b7c 100755 --- a/usr/local/www/interfaces.php +++ b/usr/local/www/interfaces.php @@ -272,6 +272,7 @@ switch($wancfg['ipaddrv6']) { if(!isset($wancfg['dhcp6-ia-pd-len'])) $wancfg['dhcp6-ia-pd-len'] = "none"; $pconfig['dhcp6-ia-pd-len'] = $wancfg['dhcp6-ia-pd-len']; + $pconfig['dhcp6-ia-pd-send-hint'] = isset($wancfg['dhcp6-ia-pd-send-hint']); $pconfig['type6'] = "dhcp6"; $pconfig['dhcp6prefixonly'] = isset($wancfg['dhcp6prefixonly']); $pconfig['dhcp6usev4iface'] = isset($wancfg['dhcp6usev4iface']); @@ -802,6 +803,7 @@ if ($_POST['apply']) { unset($wancfg['dhcprejectfrom']); unset($wancfg['dhcp6-duid']); unset($wancfg['dhcp6-ia-pd-len']); + unset($wancfg['dhcp6-ia-pd-send-hint']); unset($wancfg['dhcp6prefixonly']); unset($wancfg['dhcp6usev4iface']); unset($wancfg['track6-interface']); @@ -1013,6 +1015,8 @@ if ($_POST['apply']) { $wancfg['ipaddrv6'] = "dhcp6"; $wancfg['dhcp6-duid'] = $_POST['dhcp6-duid']; $wancfg['dhcp6-ia-pd-len'] = $_POST['dhcp6-ia-pd-len']; + if($_POST['dhcp6-ia-pd-send-hint'] == "yes") + $wancfg['dhcp6-ia-pd-send-hint'] = true; if($_POST['dhcp6prefixonly'] == "yes") $wancfg['dhcp6prefixonly'] = true; if($_POST['dhcp6usev4iface'] == "yes") @@ -2149,6 +2153,13 @@ $types6 = array("none" => gettext("None"), "staticv6" => gettext("Static IPv6"), <?=gettext("The value in this field is the delegated prefix length provided by the DHCPv6 server. Normally specified by the ISP."); ?> </td> </tr> + <tr style='display:none' name="basicdhcp6_show_dhcp6_prefix_send_hint" id="basicdhcp6_show_dhcp6_prefix_send_hint"> + <td width="22%" valign="top" class="vncell"><?=gettext("Send IPv6 prefix hint"); ?></td> + <td width="78%" class="vtable"> + <input name="dhcp6-ia-pd-send-hint" type="checkbox" id="dhcp6-ia-pd-send-hint" value="yes" <?php if ($pconfig['dhcp6-ia-pd-send-hint'] == true) echo "checked=\"checked\""; ?> /> + <?=gettext("Send an IPv6 prefix hint to indicate the desired prefix size for delegation"); ?> + </td> + </tr> <tr style='display:none' name="show_adv_dhcp6_interface_statement" id="show_adv_dhcp6_interface_statement"> <td width="22%" valign="top" class="vncell"> @@ -2304,6 +2315,7 @@ $types6 = array("none" => gettext("None"), "staticv6" => gettext("Static IPv6"), document.getElementById("basicdhcp6_use_pppoeinterface").style.display = basic; document.getElementById("basicdhcp6_show_dhcp6_prefix_delegation_size").style.display = basic; + document.getElementById("basicdhcp6_show_dhcp6_prefix_send_hint").style.display = basic; document.getElementById("basicdhcp6_show_dhcp6_prefix_only").style.display = basic; document.getElementById("show_adv_dhcp6_interface_statement").style.display = advanced; |