Firewall, in some cases DHCPv6 server rules are generated without an active server or relay configured. closes https://github.com/opnsense/core/issues/3591

This commit is contained in:
Ad Schellevis 2019-07-30 18:33:35 +02:00
parent e4b5133cdd
commit cb786592df

View File

@ -474,8 +474,13 @@ function filter_core_rules_system($fw, $defaults)
);
break;
default:
if (isset($config['dhcpdv6'][$intf]['enable']) || isset($intfinfo['track6-interface'])
|| (!empty($config['dhcrelay6']['interface']) && in_array($intf, explode(',', $config['dhcrelay6']['interface'])))) {
$dhcpdv6_enabled = isset($config['dhcpdv6'][$intf]['enable']);
$dhcrelay6_enabled = isset($config['dhcrelay6']['enable']);
$dhcrelay6_interfaces = array();
if (!empty($config['dhcrelay6']['interface'])) {
$dhcrelay6_interfaces = explode(',', $config['dhcrelay6']['interface']);
}
if ($dhcpdv6_enabled || ($dhcrelay6_enabled && in_array($intf, $dhcrelay6_interfaces))) {
$fw->registerFilterRule(
1,
array('protocol' => 'udp','ipprotocol' => 'inet6', 'from' => 'fe80::/10', 'to' => 'fe80::/10,ff02::/16',