projects
/
mirror
/
dsa-nagios.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
[project @ peter@palfrader.org-20090303201249-z9se72s4eumz3du1]
[mirror/dsa-nagios.git]
/
dsa-nagios-nrpe-config
/
dsa-check-packages
diff --git
a/dsa-nagios-nrpe-config/dsa-check-packages
b/dsa-nagios-nrpe-config/dsa-check-packages
index
9233ae6
..
b5615e4
100755
(executable)
--- a/
dsa-nagios-nrpe-config/dsa-check-packages
+++ b/
dsa-nagios-nrpe-config/dsa-check-packages
@@
-77,10
+77,14
@@
sub get_packages {
my $installed = $pkgs{'ii'};
delete $pkgs{'ii'};
my $installed = $pkgs{'ii'};
delete $pkgs{'ii'};
+ open my $olderr, ">&STDERR" or die "Can't dup STDERR: $!";
+ open STDERR, ">/dev/null" or die "Can't dup STDOUT: $!";
+
open (F, "apt-cache policy ".(join(" ", keys(%$installed)))." |") or die ("Cannot run apt-cache policy: $!\n");
@lines = <F>;
close(F);
chomp(@lines);
open (F, "apt-cache policy ".(join(" ", keys(%$installed)))." |") or die ("Cannot run apt-cache policy: $!\n");
@lines = <F>;
close(F);
chomp(@lines);
+ open STDERR, ">&", $olderr or die "Can't dup OLDERR: $!";
my $line;
my $pkgname = undef;
my $line;
my $pkgname = undef;
@@
-105,6
+109,11
@@
sub get_packages {
for my $pkgname (keys %$installed) {
my $pkg = $installed->{$pkgname};
for my $pkgname (keys %$installed) {
my $pkg = $installed->{$pkgname};
+ unless (defined($pkg->{'candidate'})) {
+ $obsolete{$pkgname} = $pkg;
+ next;
+ }
+
if ($pkg->{'candidate'} ne $pkg->{'installed'}) {
$outofdate{$pkgname} = $pkg;
next;
if ($pkg->{'candidate'} ne $pkg->{'installed'}) {
$outofdate{$pkgname} = $pkg;
next;
@@
-205,16
+214,16
@@
my @reportform = (
'long' => "%d out of date packages: %s",
'short' => "%d updates",
'status' => 'WARNING' },
'long' => "%d out of date packages: %s",
'short' => "%d updates",
'status' => 'WARNING' },
- { 'key' => 'obsolete-ignored',
- 'listpackages' => 1,
- 'long' => "%d local or obsolete packages (ignored): %s",
- 'short' => "%d obs(ign)",
- 'status' => 'OK' },
{ 'key' => 'current',
'listpackages' => 0,
'long' => "%d packages current.",
'short' => "%d ok",
'status' => 'OK' },
{ 'key' => 'current',
'listpackages' => 0,
'long' => "%d packages current.",
'short' => "%d ok",
'status' => 'OK' },
+ { 'key' => 'obsolete-ignored',
+ 'listpackages' => 1,
+ 'long' => "%d whitelisted local or obsolete packages: %s",
+ 'short' => "%d obs(ignored)",
+ 'status' => 'OK' },
{ 'key' => 'rc',
'listpackages' => 1,
'long' => "%d packages removed but not purged: %s",
{ 'key' => 'rc',
'listpackages' => 1,
'long' => "%d packages removed but not purged: %s",