Merge branch 'RELENG_2_2' of git.pfmechanics.com:pfsense/pfsense into RELENG_2_2

This commit is contained in:
Chris Buechler 2015-02-11 22:29:39 -06:00
commit d4a18f1345
13 changed files with 64 additions and 79 deletions

View File

@ -795,7 +795,7 @@ function captiveportal_prune_old() {
captiveportal_prune_old_automac();
if ($voucher_needs_sync == true)
/* Triger a sync of the vouchers on config */
/* Trigger a sync of the vouchers on config */
send_event("service sync vouchers");
/* write database */

View File

@ -2903,6 +2903,20 @@ EOD;
$bogontableinstalled = 0;
foreach ($FilterIflist as $on => $oc) {
$saved_tracker += 10;
$tracker = $saved_tracker;
if(isset($config['system']['ipv6allow']) && ($oc['type6'] == "slaac" || $oc['type6'] == "dhcp6")) {
// The DHCPv6 client rules ***MUST BE ABOVE BOGONSV6!*** https://redmine.pfsense.org/issues/3395
$ipfrules .= <<<EOD
# allow our DHCPv6 client out to the {$oc['descr']}
pass in {$log['pass']} quick on \${$oc['descr']} proto udp from fe80::/10 port = 546 to fe80::/10 port = 546 tracker {$increment_tracker($tracker)} label "{$fix_rule_label("allow dhcpv6 client in {$oc['descr']}")}"
pass in {$log['pass']} quick on \${$oc['descr']} proto udp from any port = 547 to any port = 546 tracker {$increment_tracker($tracker)} label "{$fix_rule_label("allow dhcpv6 client in {$oc['descr']}")}"
pass out {$log['pass']} quick on \${$oc['descr']} proto udp from any port = 546 to any port = 547 tracker {$increment_tracker($tracker)} label "{$fix_rule_label("allow dhcpv6 client out {$oc['descr']}")}"
EOD;
}
/* XXX: Not static but give a step of 1000 for each interface to at least be able to match rules. */
$saved_tracker += 1000;
$tracker = $saved_tracker;
@ -2933,20 +2947,6 @@ EOD;
}
}
$saved_tracker += 10;
$tracker = $saved_tracker;
if(isset($config['system']['ipv6allow']) && ($oc['type6'] == "slaac" || $oc['type6'] == "dhcp6")) {
$ipfrules .= <<<EOD
# allow our DHCPv6 client out to the {$oc['descr']}
pass in {$log['pass']} quick on \${$oc['descr']} proto udp from fe80::/10 port = 546 to fe80::/10 port = 546 tracker {$increment_tracker($tracker)} label "{$fix_rule_label("allow dhcpv6 client in {$oc['descr']}")}"
pass in {$log['pass']} quick on \${$oc['descr']} proto udp from any port = 547 to any port = 546 tracker {$increment_tracker($tracker)} label "{$fix_rule_label("allow dhcpv6 client in {$oc['descr']}")}"
pass out {$log['pass']} quick on \${$oc['descr']} proto udp from any port = 546 to any port = 547 tracker {$increment_tracker($tracker)} label "{$fix_rule_label("allow dhcpv6 client out {$oc['descr']}")}"
EOD;
}
$saved_tracker += 10;
$tracker = $saved_tracker;

View File

@ -171,7 +171,7 @@ function interface_netgraph_needed($interface = "wan") {
pfSense_ngctl_detach("{$realif}:", $realif);
}
/* NOTE: We make sure for this on interface_ppps_configure()
* no need to do it here agan.
* no need to do it here again.
* else
* pfSense_ngctl_attach(".", $realif);
*/
@ -421,8 +421,6 @@ function interfaces_bridge_configure($checkmember = 0, $realif = "") {
}
}
else if ($checkmember == 2) {
if (!strstr($bridge['if'], "_vip"))
continue;
$members = explode(',', $bridge['members']);
foreach ($members as $member) {
if (empty($config['interfaces'][$bridge['if']]) || $config['interfaces'][$bridge['if']]['ipaddrv6'] != "track6")
@ -725,9 +723,7 @@ function interfaces_gre_configure($checkparent = 0, $realif = "") {
continue;
}
else if ($checkparent == 2) {
if (!strstr($gre['if'], "_vip"))
continue;
if (empty($config['interfaces'][$gre['if']]) || $config['interfaces'][$gre['if']]['ipaddrv6'] != "track6")
if (!strstr($gre['if'], "_vip") && (empty($config['interfaces'][$gre['if']]) || $config['interfaces'][$gre['if']]['ipaddrv6'] != "track6"))
continue;
}
/* XXX: Maybe we should report any errors?! */
@ -806,9 +802,7 @@ function interfaces_gif_configure($checkparent = 0, $realif = "") {
continue;
}
else if ($checkparent == 2) {
if (!strstr($gif['if'], "_vip"))
continue;
if (empty($config['interfaces'][$gif['if']]) || $config['interfaces'][$gif['if']]['ipaddrv6'] != "track6")
if (!strstr($gif['if'], "_vip") && (empty($config['interfaces'][$gif['if']]) || $config['interfaces'][$gif['if']]['ipaddrv6'] != "track6"))
continue;
}
/* XXX: Maybe we should report any errors?! */
@ -1507,7 +1501,7 @@ function interface_ppps_configure($interface) {
}
break;
default:
log_error(sprintf(gettext("Unkown %s configured as ppp interface."), $type));
log_error(sprintf(gettext("Unknown %s configured as ppp interface."), $type));
break;
}
}
@ -2113,7 +2107,7 @@ function interface_carp_configure(&$vip) {
if ($vip['mode'] != "carp")
return;
/* NOTE: Maybe its useless nowdays */
/* NOTE: Maybe its useless nowadays */
$realif = get_real_interface($vip['interface']);
if (!does_interface_exist($realif)) {
file_notice("CARP", sprintf(gettext("Interface specified for the virtual IP address %s does not exist. Skipping this VIP."), $vip['subnet']), "Firewall: Virtual IP", "");
@ -2369,7 +2363,7 @@ function interface_wireless_configure($if, &$wl, &$wlcfg) {
$wlcmd[] = "-mediaopt adhoc";
}
/* Not neccesary to set BSS mode as this is default if adhoc and/or hostap is NOT set */
/* Not necessary to set BSS mode as this is default if adhoc and/or hostap is NOT set */
/* handle hide ssid option */
if(isset($wlcfg['hidessid']['enable'])) {
@ -3120,10 +3114,10 @@ function interface_track6_configure($interface = "lan", $wancfg, $linkupevent =
case "dhcp6":
if ($linkupevent == true) {
/*
* NOTE: Usually come here from rc.linkup calling so just call directly intead of generating event
* NOTE: Usually come here from rc.linkup calling so just call directly instead of generating event
* Instead of disrupting all other v4 configuration just restart DHCPv6 client for now
*
* XXX: Probably DHCPv6 client should handle this autmagically itself?
* XXX: Probably DHCPv6 client should handle this automagically itself?
*/
$parentrealif = get_real_interface($wancfg['track6-interface']);
$pidv6 = find_dhcp6c_process($parentrealif);
@ -3907,7 +3901,7 @@ function DHCP_Config_File_Substitutions($wancfg, $wanif, $dhclientconf) {
$res = stripos($dhclientconf, $various_mac_type . $various_mac_case . $various_mac_delimiter);
if ($res !== false) {
/* Get MAC Address as ASCII String With Colon (:) Celimiters */
/* Get MAC Address as ASCII String With Colon (:) delimiters */
if ("$various_mac_case" == "U") $dhcpclientconf_mac = strtoupper(get_interface_mac($wanif));
if ("$various_mac_case" == "L") $dhcpclientconf_mac = strtolower(get_interface_mac($wanif));
@ -4214,7 +4208,7 @@ function get_real_interface($interface = "wan", $family = "all", $realv6iface =
$wanif = "ppp";
break;
default:
// If a real interface was alread passed simply
// If a real interface was already passed simply
// pass the real interface back. This encourages
// the usage of this function in more cases so that
// we can combine logic for more flexibility.
@ -4796,7 +4790,7 @@ function ip_in_interface_alias_subnet($interface, $ipalias) {
function get_interface_ip($interface = "wan") {
$realif = get_failover_interface($interface);
if (!$realif) {
if (empty($realif)) {
if (strstr($interface, "_vip"))
return get_configured_carp_interface_list($interface);
else
@ -4814,7 +4808,7 @@ function get_interface_ipv6($interface = "wan", $flush = false) {
global $config;
$realif = get_failover_interface($interface, "inet6");
if (!$realif) {
if (empty($realif)) {
if (strstr($interface, "_vip"))
return get_configured_carp_interface_list($interface, "inet6");
else
@ -4869,10 +4863,9 @@ function get_interface_linklocal($interface = "wan") {
function get_interface_subnet($interface = "wan") {
$realif = get_real_interface($interface);
if (!$realif) {
if (empty($realif)) {
if (strstr($interface, "_vip")) {
list($interface, $vhid) = explode("_vip", $interface);
$realif = get_real_interface($interface);
return get_configured_carp_interface_list($interface, 'inet', 'subnet');
} else
return null;
}
@ -4888,10 +4881,9 @@ function get_interface_subnetv6($interface = "wan") {
global $config;
$realif = get_real_interface($interface, "inet6");
if (!$realif) {
if (empty($realif)) {
if (strstr($interface, "_vip")) {
list($interface, $vhid) = explode("_vip", $interface);
$realif = get_real_interface($interface);
return get_configured_carp_interface_list($interface, 'inet6', 'subnet');
} else
return null;
}

View File

@ -295,15 +295,18 @@ function notify_via_smtp($message, $force = false) {
fwrite($fd, $message);
fclose($fd);
send_smtp_message($message, "{$config['system']['hostname']}.{$config['system']['domain']} - Notification");
send_smtp_message($message, "{$config['system']['hostname']}.{$config['system']['domain']} - Notification", $force);
return;
}
function send_smtp_message($message, $subject = "(no subject)") {
function send_smtp_message($message, $subject = "(no subject)", $force = false) {
global $config, $g;
require_once("sasl.inc");
require_once("smtp.inc");
if(isset($config['notifications']['smtp']['disable']) && !$force)
return;
if(!$config['notifications']['smtp']['ipaddress'])
return;

View File

@ -939,7 +939,7 @@ function system_webgui_create_certificate() {
'organizationName' => "{$g['product_name']} webConfigurator Self-Signed Certificate",
'emailAddress' => "admin@{$config['system']['hostname']}.{$config['system']['domain']}",
'commonName' => "{$config['system']['hostname']}-{$cert['refid']}");
$old_err_level = error_reporting(0); /* otherwise openssl_ functions throw warings directly to a page screwing menu tab */
$old_err_level = error_reporting(0); /* otherwise openssl_ functions throw warnings directly to a page screwing menu tab */
if (!cert_create($cert, null, 2048, 2000, $dn, "self-signed", "sha256")){
while($ssl_err = openssl_error_string()){
log_error("Error creating WebGUI Certificate: openssl library returns: " . $ssl_err);
@ -1235,7 +1235,7 @@ mimetype.assign = (
url.access-deny = ( "~", ".inc" )
######### Options that are good to be but not neccesary to be changed #######
######### Options that are good to be but not necessary to be changed #######
## bind to port (default: 80)
@ -1746,7 +1746,7 @@ function system_ntp_configure($start_ntpd=true) {
}
}
/* open configuration for wrting or bail */
/* open configuration for writing or bail */
if (!@file_put_contents("{$g['varetc_path']}/ntpd.conf", $ntpcfg)) {
log_error("Could not open {$g['varetc_path']}/ntpd.conf for writing");
return;

View File

@ -304,7 +304,6 @@ rrset-cache-size: {$rrset_cache_size}m
{$optimization['rrset_cache_slabs']}
{$optimization['infra_cache_slabs']}
{$optimization['key_cache_slabs']}
{$optimization['rrset_cache_size']}
outgoing-range: 4096
{$optimization['so_rcvbuf']}
{$anchor_file}

View File

@ -1869,7 +1869,7 @@ function upgrade_052_to_053() {
if (!is_array($config['cert']))
$config['cert'] = array();
/* migrate advanced admin page webui ssl to certifcate mngr */
/* migrate advanced admin page webui ssl to certificate manager */
if ($config['system']['webgui']['certificate'] &&
$config['system']['webgui']['private-key']) {
@ -2631,7 +2631,7 @@ function upgrade_078_to_079() {
function upgrade_079_to_080() {
global $config;
/* Upgrade config in 1.2.3 specifying a username other than admin for synching. */
/* Upgrade config in 1.2.3 specifying a username other than admin for syncing. */
if (!empty($config['system']['username']) && is_array($config['installedpackages']['carpsettings']) &&
is_array($config['installedpackages']['carpsettings']['config'])) {
$config['installedpackages']['carpsettings']['config'][0]['username'] = $config['system']['username'];
@ -2985,7 +2985,7 @@ function upgrade_088_to_089() {
if (!is_array($config['cert']))
$config['cert'] = array();
/* migrate captive portal ssl to certifcate mngr */
/* migrate captive portal ssl to certificate manager */
if (is_array($config['captiveportal'])) {
foreach ($config['captiveportal'] as $id => &$setting) {
if (isset($setting['httpslogin'])) {

View File

@ -956,9 +956,9 @@ function get_configured_carp_interface_list($carpinterface = '', $family = 'inet
switch ($what) {
case 'subnet':
if ($family == 'inet' && is_ipaddrv4($vip['subnet']))
return "{$vip['subnet']}/{$vip['subnet_bits']}";
return $vip['subnet_bits'];
else if ($family == 'inet6' && is_ipaddrv6($vip['subnet']))
return "{$vip['subnet']}/{$vip['subnet_bits']}";
return $vip['subnet_bits'];
break;
case 'iface':
if ($family == 'inet' && is_ipaddrv4($vip['subnet']))

View File

@ -284,7 +284,7 @@ function voucher_expire($voucher_received) {
$unsetindexes[] = $cpentry[5];
}
} else
captiveportal_syslog("$voucher ($roll/$nr): not found on any registererd Roll");
captiveportal_syslog("$voucher ($roll/$nr): not found on any registered Roll");
} else
// hmm, thats weird ... not what I expected
captiveportal_syslog("$voucher invalid: {$output[0]}!!");
@ -296,7 +296,7 @@ function voucher_expire($voucher_received) {
voucher_write_active_db($roll, $active);
unset($active_vouchers);
/* Triger a sync of the vouchers on config */
/* Trigger a sync of the vouchers on config */
send_event("service sync vouchers");
}
@ -412,8 +412,8 @@ function voucher_auth($voucher_received, $test = 0) {
}
}
} else {
$test_result[] = "$voucher ($roll/$nr): not found on any registererd Roll";
captiveportal_syslog("$voucher ($roll/$nr): not found on any registererd Roll");
$test_result[] = "$voucher ($roll/$nr): not found on any registered Roll";
captiveportal_syslog("$voucher ($roll/$nr): not found on any registered Roll");
}
} else {
// hmm, thats weird ... not what I expected
@ -480,7 +480,7 @@ function voucher_auth($voucher_received, $test = 0) {
$active_vouchers[$first_voucher_roll][$first_voucher] = "$timestamp,$minutes";
voucher_write_active_db($first_voucher_roll, $active_vouchers[$first_voucher_roll]);
/* Triger a sync of the vouchers on config */
/* Trigger a sync of the vouchers on config */
send_event("service sync vouchers");
unlock($voucherlck);
@ -560,7 +560,7 @@ function voucher_configure_zone($sync = false) {
$timestamp = $activent['timestamp'];
$minutes = $activent['minutes'];
// its tempting to check for expired timestamps, but during
// bootup, we most likely don't have the correct time time.
// bootup, we most likely don't have the correct time.
$active_vouchers[$voucher] = "$timestamp,$minutes";
}
}
@ -613,7 +613,7 @@ function voucher_read_active_db($roll) {
if ($dirty) { // if we found expired entries, lets save our snapshot
voucher_write_active_db($roll, $active);
/* Triger a sync of the vouchers on config */
/* Trigger a sync of the vouchers on config */
send_event("service sync vouchers");
}
}
@ -735,7 +735,7 @@ function voucher_save_db_to_config_zone() {
unlock($voucherlck);
write_config("Synching vouchers");
write_config("Syncing vouchers");
return;
}

View File

@ -180,16 +180,6 @@ if ($_POST) {
if (empty($_POST['password']))
$input_errors[] = gettext("You must specify a CARP password that is shared between the two VHID members.");
if (is_ipaddrv4($_POST['subnet'])) {
$parent_ip = get_interface_ip($_POST['interface']);
$parent_sn = get_interface_subnet($_POST['interface']);
$subnet = gen_subnet($parent_ip, $parent_sn);
} else if (is_ipaddrv6($_POST['subnet'])) {
$parent_ip = get_interface_ipv6($_POST['interface']);
$parent_sn = get_interface_subnetv6($_POST['interface']);
$subnet = gen_subnetv6($parent_ip, $parent_sn);
}
if ($_POST['interface'] == 'lo0')
$input_errors[] = gettext("For this type of vip localhost is not allowed.");
else if (strpos($_POST['interface'], '_vip'))
@ -211,6 +201,7 @@ if ($_POST) {
$cannot_find = $_POST['subnet'] . "/" . $_POST['subnet_bits'] ;
$input_errors[] = sprintf(gettext("Sorry, we could not locate an interface with a matching subnet for %s. Please add an IP alias in this subnet on this interface."),$cannot_find);
}
unset($parent_ip, $parent_sn, $subnet);
}
break;
default:

View File

@ -344,7 +344,7 @@ function show_source_port_range() {
</td></tr>
<tr><td valign="top" class="vncell" width="20%"><?=gettext("Valid time"); ?></td>
<td class="vtable" width="80%">
<input name="maxage" type="text" class="formfld unkown" id="maxage" size="8" value="<?=htmlspecialchars($pconfig['maxage']);?>" /> <?=gettext("seconds"); ?>
<input name="maxage" type="text" class="formfld unknown" id="maxage" size="8" value="<?=htmlspecialchars($pconfig['maxage']);?>" /> <?=gettext("seconds"); ?>
<br />
<span class="vexpl">
<?=gettext("Set the time that a Spanning Tree Protocol configuration is " .
@ -354,7 +354,7 @@ function show_source_port_range() {
</td></tr>
<tr><td valign="top" class="vncell" width="20%"><?=gettext("Forward time"); ?> </td>
<td class="vtable" width="80%">
<input name="fwdelay" type="text" class="formfld unkown" id="fwdelay" size="8" value="<?=htmlspecialchars($pconfig['fwdelay']);?>" /> <?=gettext("seconds"); ?>
<input name="fwdelay" type="text" class="formfld unknown" id="fwdelay" size="8" value="<?=htmlspecialchars($pconfig['fwdelay']);?>" /> <?=gettext("seconds"); ?>
<br />
<span class="vexpl">
<?=gettext("Set the time that must pass before an interface begins forwarding " .
@ -363,7 +363,7 @@ function show_source_port_range() {
</td></tr>
<tr><td valign="top" class="vncell" width="20%"><?=gettext("Hello time"); ?></td>
<td class="vtable" width="80%">
<input name="hellotime" type="text" class="formfld unkown" size="8" id="hellotime" value="<?=htmlspecialchars($pconfig['hellotime']);?>" /> <?=gettext("seconds"); ?>
<input name="hellotime" type="text" class="formfld unknown" size="8" id="hellotime" value="<?=htmlspecialchars($pconfig['hellotime']);?>" /> <?=gettext("seconds"); ?>
<br />
<span class="vexpl">
<?=gettext("Set the time between broadcasting of Spanning Tree Protocol configuration messages. The hello time may only be changed when " .
@ -372,7 +372,7 @@ function show_source_port_range() {
</td></tr>
<tr><td valign="top" class="vncell" width="20%"><?=gettext("Priority"); ?></td>
<td class="vtable" width="80%">
<input name="priority" type="text" class="formfld unkown" id="priority" value="<?=htmlspecialchars($pconfig['priority']);?>" />
<input name="priority" type="text" class="formfld unknown" id="priority" value="<?=htmlspecialchars($pconfig['priority']);?>" />
<br />
<span class="vexpl">
<?=gettext("Set the bridge priority for Spanning Tree. The default is 32768. " .
@ -381,7 +381,7 @@ function show_source_port_range() {
</td></tr>
<tr><td valign="top" class="vncell" width="20%"><?=gettext("Hold count"); ?></td>
<td class="vtable" width="80%">
<input name="holdcnt" type="text" class="formfld unkown" id="holdcnt" value="<?=htmlspecialchars($pconfig['holdcnt']);?>" />
<input name="holdcnt" type="text" class="formfld unknown" id="holdcnt" value="<?=htmlspecialchars($pconfig['holdcnt']);?>" />
<br />
<span class="vexpl">
<?=gettext("Set the transmit hold count for Spanning Tree. This is the number" .
@ -393,7 +393,7 @@ function show_source_port_range() {
<td class="vtable" width="80%">
<table summary="priority">
<?php foreach ($ifacelist as $ifn => $ifdescr)
echo "<tr><td>{$ifdescr}</td><td><input size=\"5\" name=\"{$ifn}\" type=\"text\" class=\"formfld unkown\" id=\"{$ifn}\" value=\"{$ifpriority[$ifn]}\" /></td></tr>";
echo "<tr><td>{$ifdescr}</td><td><input size=\"5\" name=\"{$ifn}\" type=\"text\" class=\"formfld unknown\" id=\"{$ifn}\" value=\"{$ifpriority[$ifn]}\" /></td></tr>";
?>
<tr><td></td></tr>
</table>
@ -407,7 +407,7 @@ function show_source_port_range() {
<td class="vtable" width="80%">
<table summary="path cost">
<?php $i = 0; foreach ($ifacelist as $ifn => $ifdescr)
echo "<tr><td>{$ifdescr}</td><td><input size=\"8\" name=\"{$ifn}{$i}\" type=\"text\" class=\"formfld unkown\" id=\"{$ifn}{$i}\" value=\"{$ifpathcost[$ifn]}\" /></td></tr>";
echo "<tr><td>{$ifdescr}</td><td><input size=\"8\" name=\"{$ifn}{$i}\" type=\"text\" class=\"formfld unknown\" id=\"{$ifn}{$i}\" value=\"{$ifpathcost[$ifn]}\" /></td></tr>";
?>
<tr><td></td></tr>
</table>
@ -424,7 +424,7 @@ function show_source_port_range() {
<tr style="display:none" id="sprtable2">
<td valign="top" class="vncell"><?=gettext("Cache size"); ?></td>
<td class="vtable">
<input name="maxaddr" size="10" type="text" class="formfld unkown" id="maxaddr" value="<?=htmlspecialchars($pconfig['maxaddr']);?>" /> <?=gettext("entries"); ?>
<input name="maxaddr" size="10" type="text" class="formfld unknown" id="maxaddr" value="<?=htmlspecialchars($pconfig['maxaddr']);?>" /> <?=gettext("entries"); ?>
<br /><span class="vexpl">
<?=gettext("Set the size of the bridge address cache to size. The default is " .
".100 entries."); ?>
@ -434,7 +434,7 @@ function show_source_port_range() {
<tr style="display:none" id="sprtable3">
<td valign="top" class="vncell"><?=gettext("Cache entry expire time"); ?></td>
<td>
<input name="timeout" type="text" class="formfld unkown" id="timeout" size="10" value="<?=htmlspecialchars($pconfig['timeout']);?>" /> <?=gettext("seconds"); ?>
<input name="timeout" type="text" class="formfld unknown" id="timeout" size="10" value="<?=htmlspecialchars($pconfig['timeout']);?>" /> <?=gettext("seconds"); ?>
<br /><span class="vexpl">
<?=gettext("Set the timeout of address cache entries to this number of seconds. If " .
"seconds is zero, then address cache entries will not be expired. " .

View File

@ -253,7 +253,7 @@ if ($_POST) {
if (!empty($pconfig['key']))
$ca['prv'] = base64_encode($pconfig['key']);
} else {
$old_err_level = error_reporting(0); /* otherwise openssl_ functions throw warings directly to a page screwing menu tab */
$old_err_level = error_reporting(0); /* otherwise openssl_ functions throw warnings directly to a page screwing menu tab */
if ($pconfig['method'] == "existing")
ca_import($ca, $pconfig['cert'], $pconfig['key'], $pconfig['serial']);

View File

@ -339,7 +339,7 @@ if ($_POST) {
$cert['descr'] = $pconfig['descr'];
$old_err_level = error_reporting(0); /* otherwise openssl_ functions throw warings directly to a page screwing menu tab */
$old_err_level = error_reporting(0); /* otherwise openssl_ functions throw warnings directly to a page screwing menu tab */
if ($pconfig['method'] == "import")
cert_import($cert, $pconfig['cert'], $pconfig['key']);