diff options
author | Andrew Pilloud <andrewpilloud@igneoussystems.com> | 2015-11-04 12:10:24 -0800 |
---|---|---|
committer | Andrew Pilloud <andrewpilloud@igneoussystems.com> | 2015-11-05 07:13:18 -0800 |
commit | 3475eb0416efc371a00a846b81aa9657c6951d29 (patch) | |
tree | fd1fc6b2bbffb4858eef740ea0a99b8987b2ae03 /src/etc | |
parent | b921ab63efeb3354040a0eda0f7484acb5fa39e7 (diff) | |
download | pfsense-3475eb0416efc371a00a846b81aa9657c6951d29.zip pfsense-3475eb0416efc371a00a846b81aa9657c6951d29.tar.gz |
Make DHCP deny action configurable
Diffstat (limited to 'src/etc')
-rw-r--r-- | src/etc/inc/services.inc | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/src/etc/inc/services.inc b/src/etc/inc/services.inc index a198a35..58467fb 100644 --- a/src/etc/inc/services.inc +++ b/src/etc/inc/services.inc @@ -776,20 +776,24 @@ EOPP; } $dhcpdconf .= " allow members of \"" . str_replace(':', '', $mac) . "\";\n"; } + $deny_action = "deny"; + if (isset($poolconf['nonak'])) { + $deny_action = "ignore"; + } $mac_deny_list = array_unique(explode(',', $poolconf['mac_deny'])); foreach ($mac_deny_list as $mac) { if (empty($mac)) { continue; } - $dhcpdconf .= " deny members of \"" . str_replace(':', '', $mac) . "\";\n"; + $dhcpdconf .= " $deny_action members of \"" . str_replace(':', '', $mac) . "\";\n"; } if ($poolconf['failover_peerip'] <> "") { - $dhcpdconf .= " deny dynamic bootp clients;\n"; + $dhcpdconf .= " $deny_action dynamic bootp clients;\n"; } if (isset($poolconf['denyunknown'])) { - $dhcpdconf .= " deny unknown-clients;\n"; + $dhcpdconf .= " $deny_action unknown-clients;\n"; } if ($poolconf['gateway'] && $poolconf['gateway'] != "none" && ($poolconf['gateway'] != $dhcpifconf['gateway'])) { |