diff options
| author | rbalocca <rbalocca@vyatta.com> | 2008-04-11 14:40:33 -0700 |
|---|---|---|
| committer | rbalocca <rbalocca@vyatta.com> | 2008-04-11 14:40:33 -0700 |
| commit | 100ba668363e2e03e396dfb20db038bf678d8522 (patch) | |
| tree | 91bd1853581df01e3df7a1f2a4255eb62f71ef21 /scripts/VyattaClusterConfig.pm | |
| parent | 4b341c73c9945def3100e00196b509cc1bd024f1 (diff) | |
| parent | 3458dfcee2b288c9edff6941e1739067b049fa60 (diff) | |
| download | vyatta-cluster-100ba668363e2e03e396dfb20db038bf678d8522.tar.gz vyatta-cluster-100ba668363e2e03e396dfb20db038bf678d8522.zip | |
Merge branch 'glendale' into hollywood
Diffstat (limited to 'scripts/VyattaClusterConfig.pm')
| -rw-r--r-- | scripts/VyattaClusterConfig.pm | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/scripts/VyattaClusterConfig.pm b/scripts/VyattaClusterConfig.pm index a7ce914..ab5b536 100644 --- a/scripts/VyattaClusterConfig.pm +++ b/scripts/VyattaClusterConfig.pm @@ -163,12 +163,14 @@ EOS } sub check_interfaces { - my @interfaces = @_; + my ($exist_only, @interfaces) = @_; foreach (@interfaces) { system("ip addr show $_ >& /dev/null"); if ($? >> 8) { return "interface $_ does not exist"; } + next if ($exist_only); + my $link = `ip link show $_ | grep $_`; if (($link =~ /NO-CARRIER/) || !($link =~ /,UP/)) { return "interface $_ is not connected"; @@ -188,7 +190,7 @@ sub ha_cf { return (undef, "using multiple resource groups is not supported yet") if ($#groups > 0); - my $ierr = check_interfaces(@{$self->{_interface}}); + my $ierr = check_interfaces(0, @{$self->{_interface}}); if (defined($ierr)) { return (undef, $ierr); } @@ -272,7 +274,7 @@ sub isValidIPSpec { } # check optional interface if (defined($comps[2])) { - return 0 if (defined(check_interfaces($comps[2]))); + return 0 if (defined(check_interfaces(1, $comps[2]))); } # check optional broadcast addr if (defined($comps[3])) { |
