summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xlib/Vyatta/Misc.pm11
1 files changed, 9 insertions, 2 deletions
diff --git a/lib/Vyatta/Misc.pm b/lib/Vyatta/Misc.pm
index 1f5a915..ac1e90b 100755
--- a/lib/Vyatta/Misc.pm
+++ b/lib/Vyatta/Misc.pm
@@ -109,8 +109,15 @@ sub is_primary_address {
my $line = `ip address show $hash{$ip_address} | grep 'inet' | head -n 1`;
chomp($line);
my $primary_address = undef;
- if ($line =~ /inet\s+([0-9.]+)\/.*\s([\w.]+)$/) {
- $primary_address = $1;
+
+ if ($line =~ /vtun|wan/) {
+ if ($line =~ /inet\s+([0-9.]+).*\s([\w.]+)$/) {
+ $primary_address = $1;
+ }
+ } else {
+ if ($line =~ /inet\s+([0-9.]+)\/.*\s([\w.]+)$/) {
+ $primary_address = $1;
+ }
}
return 1 if ($ip_address eq $primary_address);