summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--debian/changelog20
-rwxr-xr-xlib/Vyatta/ConfigOutput.pm3
-rwxr-xr-xlib/Vyatta/Keepalived.pm13
-rwxr-xr-xlib/Vyatta/Misc.pm3
4 files changed, 31 insertions, 8 deletions
diff --git a/debian/changelog b/debian/changelog
index 4614176..228473a 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,23 @@
+vyatta-cfg (0.16.30) unstable; urgency=low
+
+ * Use opendir/grep to get rid of running ls/grep
+ * Add support for incoming interface type
+ * Remove ifb device skipping
+
+ -- Stephen Hemminger <stephen.hemminger@vyatta.com> Mon, 05 Apr 2010 16:17:09 -0700
+
+vyatta-cfg (0.16.29) unstable; urgency=low
+
+ * fix for bug 5450.
+
+ -- Michael Larson <slioch@slioch.vyatta.com> Thu, 01 Apr 2010 14:44:10 -0700
+
+vyatta-cfg (0.16.28) unstable; urgency=low
+
+ * Ignore ifb devices
+
+ -- Stephen Hemminger <stephen.hemminger@vyatta.com> Tue, 30 Mar 2010 10:47:52 -0700
+
vyatta-cfg (0.16.27) unstable; urgency=low
* Allow reading interface description outside config mode
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;