diff --git a/Shorewall/Perl/Shorewall/Providers.pm b/Shorewall/Perl/Shorewall/Providers.pm index a81019d9b..42d964449 100644 --- a/Shorewall/Perl/Shorewall/Providers.pm +++ b/Shorewall/Perl/Shorewall/Providers.pm @@ -769,11 +769,8 @@ sub lookup_provider( $ ) { my $provider_number = numeric_value $provider; - for ( keys %providers ) { - if ( $providers{$_}{number} == $provider_number ) { - $providerref = $providers{$_}; - last; - } + for ( values %providers ) { + $providerref = $_, last if $_->{number} == $provider_number; } fatal_error "Unknown provider ($provider)" unless $providerref;