diff --git a/lib/AccountManager/App/Status.pm b/lib/AccountManager/App/Status.pm index 38d755c1c4c9d998faf482a407c24d56693e7316..e4e680e402f420c1e0bf10d15b257cdd4090aaa1 100644 --- a/lib/AccountManager/App/Status.pm +++ b/lib/AccountManager/App/Status.pm @@ -16,7 +16,7 @@ use Mojo::Base qw(AccountManager::App::Controller); use English qw(-no_match_vars); use List::MoreUtils qw(none); -use Net::IP; +use Mojo::Util qw(network_contains); use Sys::Hostname; use Syntax::Keyword::Try; @@ -41,12 +41,10 @@ sub run { return; } - my $client_ip = Net::IP->new($self->client_ip()); - my @allowed_ips = - map { Net::IP->new($_) } - $self->string_to_list($config->{status}->{allowed}); + my $client_ip = $self->client_ip(); + my @allowed_ips = $self->string_to_list($config->{status}->{allowed}); - if (none { $_->overlaps($client_ip) } @allowed_ips) { + if (none { network_contains($_, $client_ip) } @allowed_ips) { $self->render( status => 403, test => "unauthorized access"