sub in_dhcp_range {
my $ip = shift;
- return 1 if -e "$server::conf/ip/$ip/dhcpd.pl";
+ my $server = server::as_hash_for $ip;
- my $i = to_int($ip) & to_int($server::netmask);
- my $s = to_int($server::ip) & to_int($server::netmask);
+ my $i = to_int($ip) & to_int($server->{netmask});
+ my $s = to_int($server->{ip}) & to_int($server->{netmask});
if ( $i == $s ) {
- $i = to_int($ip) & ( to_int($server::netmask) ^ 0xffffffff );
- return 1 if ( $i >= $server::ip_from && $i <= $server::ip_to );
+ $i = to_int($ip) & ( to_int($server->{netmask}) ^ 0xffffffff );
+ return 1 if ( $i >= $server->{ip_from} && $i <= $server->{ip_to} );
}
return 0;
}