diff options
Diffstat (limited to 'lib/Vyatta')
-rwxr-xr-x | lib/Vyatta/ConfigOutput.pm | 3 | ||||
-rwxr-xr-x | lib/Vyatta/Keepalived.pm | 13 | ||||
-rwxr-xr-x | lib/Vyatta/Misc.pm | 3 |
3 files changed, 11 insertions, 8 deletions
diff --git a/lib/Vyatta/ConfigOutput.pm b/lib/Vyatta/ConfigOutput.pm index d7992c7..fd30049 100755 --- a/lib/Vyatta/ConfigOutput.pm +++ b/lib/Vyatta/ConfigOutput.pm @@ -168,6 +168,9 @@ sub displayValues { } print "$diff$prefix$name $value\n"; } + elsif ($cnodes{'def'} && ($diff eq '>' || $diff eq '-')) { + print "$diff$prefix$name $value\n"; + } } } diff --git a/lib/Vyatta/Keepalived.pm b/lib/Vyatta/Keepalived.pm index 437b055..403d385 100755 --- a/lib/Vyatta/Keepalived.pm +++ b/lib/Vyatta/Keepalived.pm @@ -164,17 +164,18 @@ sub intf_sort { sub get_state_files { my ($intf, $group) = @_; + opendir my $sdir, $state_dir + or die "Can't open $state_dir: $!\n"; + my @state_files; - my $LS; if ($group eq "all") { - open($LS,"ls $state_dir |grep '^vrrpd_$intf.*\.state\$' |"); + @state_files = grep { /^vrrpd_$intf.*\.state$/ } $sdir; } else { my $intf_group = $intf . "_" . $group . ".state"; - open($LS, - "ls $state_dir |grep '^vrrpd_$intf_group\$' |"); + @state_files = grep { /^vrrpd_$intf_group$/ } $sdir; } - @state_files = <$LS>; - close($LS); + close $sdir; + @state_files = intf_sort(@state_files); foreach my $i (0 .. $#state_files) { $state_files[$i] = "$state_dir/$state_files[$i]"; diff --git a/lib/Vyatta/Misc.pm b/lib/Vyatta/Misc.pm index 9b3e5ee..44c0459 100755 --- a/lib/Vyatta/Misc.pm +++ b/lib/Vyatta/Misc.pm @@ -103,8 +103,7 @@ sub getInterfaces { my @interfaces = grep { ( !/^\./ ) && ( $_ ne 'bonding_masters' ) && ! ( $_ =~ '^mon.wlan\d$') && - ! ( $_ =~ '^wmaster\d+$') && - ! ( $_ =~ '^ifb.') + ! ( $_ =~ '^wmaster\d+$') } readdir $sys_class; closedir $sys_class; return @interfaces; |