From ab8d138dcd5114c4892e12c514990797572fd318 Mon Sep 17 00:00:00 2001 From: jim-p Date: Thu, 21 Oct 2010 16:58:40 -0400 Subject: Reject DHCP static mappings that are inside of the DHCP range. Fixes #966 --- usr/local/www/services_dhcp_edit.php | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'usr/local/www/services_dhcp_edit.php') diff --git a/usr/local/www/services_dhcp_edit.php b/usr/local/www/services_dhcp_edit.php index cccbd2a..525a983 100755 --- a/usr/local/www/services_dhcp_edit.php +++ b/usr/local/www/services_dhcp_edit.php @@ -150,6 +150,11 @@ if ($_POST) { if ($_POST['ipaddr']) { $dynsubnet_start = ip2ulong($config['dhcpd'][$if]['range']['from']); $dynsubnet_end = ip2ulong($config['dhcpd'][$if]['range']['to']); + if ((ip2ulong($_POST['ipaddr']) > $dynsubnet_start) && + (ip2ulong($_POST['ipaddr']) < $dynsubnet_end)) { + $input_errors[] = sprintf(gettext("The IP address must not be within the DHCP range for this interface.")); + } + $lansubnet_start = ip2ulong(long2ip32(ip2long($ifcfgip) & gen_subnet_mask_long($ifcfgsn))); $lansubnet_end = ip2ulong(long2ip32(ip2long($ifcfgip) | (~gen_subnet_mask_long($ifcfgsn)))); if ((ip2ulong($_POST['ipaddr']) < $lansubnet_start) || -- cgit v1.1