Unconditionally cache the result of wildcard lookups

This commit is contained in:
Tom Eastep 2010-12-20 10:07:19 -08:00
parent 433b3fbd87
commit 7a1a303265
2 changed files with 4 additions and 2 deletions

View File

@ -125,7 +125,7 @@ sub setup_proxy_arp() {
$first_entry = 0;
}
fatal_error "Unknown interface ($external)" unless known_interface $external, 1;
fatal_error "Unknown interface ($external)" unless known_interface $external;
fatal_error "Wildcard interface ($external) not allowed" if $external =~ /\+$/;
$reset{$external} = 1 unless $set{$external};
@ -133,7 +133,7 @@ sub setup_proxy_arp() {
my $physical = '-';
if ( $interface ne '-' ) {
fatal_error "Unknown interface ($interface)" unless known_interface $interface, 1;
fatal_error "Unknown interface ($interface)" unless known_interface $interface;
fatal_error "Wildcard interface ($interface) not allowed" if $interface =~ /\+$/;
$physical = physical_name $interface;
$set{$interface} = 1;

View File

@ -1192,6 +1192,8 @@ sub known_interface($;$)
my ( $interface, $cache ) = @_;
my $interfaceref = $interfaces{$interface};
$cache = 1 unless defined $cache;
return $interfaceref if $interfaceref;
fatal_error "Invalid interface ($interface)" if $interface =~ /\*/;