From de7191e3424e02ba278a39b86e8b1906a25d0362 Mon Sep 17 00:00:00 2001 From: Holger Weiss Date: Sun, 11 Apr 2010 09:54:10 +0200 Subject: [PATCH] Fix Debian bug #478906: Failure when run via ePN | When perl plugin scripts are run with the embedded perl interpreter in | nagios3, the "shift" perl command doesn't shift @ARGV, but @_ (which | happens to contain the same thing as @ARGV at the time the script was | started). | | [...] | | A fix is to replace all the instances of "shift" with "shift @ARGV". [ http://bugs.debian.org/478906 ] (Fixed by Stephane Chazelas, forwarded by Jan Wagner.) --- NEWS | 1 + THANKS.in | 1 + plugins-scripts/check_disk_smb.pl | 12 ++++++------ 3 files changed, 8 insertions(+), 6 deletions(-) diff --git a/NEWS b/NEWS index 5827db6..7efebbd 100644 --- a/NEWS +++ b/NEWS @@ -15,6 +15,7 @@ This file documents the major additions and syntax changes between releases. Fix regression introduced in #1867716 where partially valid performance strings would not be printed anymore Fix regression in check_http ssl checks on some servers - make SNI an option Fix guest mode support in check_disk_smb + Fix check_disk_smb failure when run via ePN WARNINGS Updated developer documentation to say that performance labels should not have an equals sign or single quote in the label diff --git a/THANKS.in b/THANKS.in index cc6e194..f62a4d8 100644 --- a/THANKS.in +++ b/THANKS.in @@ -262,3 +262,4 @@ Jimmy Bergman Konstantin Khomoutov Josip Rodin Dann Frazier +Stephane Chazelas diff --git a/plugins-scripts/check_disk_smb.pl b/plugins-scripts/check_disk_smb.pl index 022fa50..ca593d4 100755 --- a/plugins-scripts/check_disk_smb.pl +++ b/plugins-scripts/check_disk_smb.pl @@ -64,27 +64,27 @@ my $smbclientoptions= $opt_P ? "-p $opt_P " : ""; # Options checking -($opt_H) || ($opt_H = shift) || usage("Host name not specified\n"); +($opt_H) || ($opt_H = shift @ARGV) || usage("Host name not specified\n"); my $host = $1 if ($opt_H =~ /^([-_.A-Za-z0-9 ]+\$?)$/); ($host) || usage("Invalid host: $opt_H\n"); -($opt_s) || ($opt_s = shift) || usage("Share volume not specified\n"); +($opt_s) || ($opt_s = shift @ARGV) || usage("Share volume not specified\n"); my $share = $1 if ($opt_s =~ /^([-_.A-Za-z0-9]+\$?)$/); ($share) || usage("Invalid share: $opt_s\n"); -($opt_u) || ($opt_u = shift) || ($opt_u = "guest"); +($opt_u) || ($opt_u = shift @ARGV) || ($opt_u = "guest"); my $user = $1 if ($opt_u =~ /^([-_.A-Za-z0-9\\]+)$/); ($user) || usage("Invalid user: $opt_u\n"); -($opt_p) || ($opt_p = shift) || ($opt_p = ""); +($opt_p) || ($opt_p = shift @ARGV) || ($opt_p = ""); my $pass = $1 if ($opt_p =~ /(.*)/); $pass = "-N" if ($opt_p eq ""); -($opt_w) || ($opt_w = shift) || ($opt_w = 85); +($opt_w) || ($opt_w = shift @ARGV) || ($opt_w = 85); my $warn = $1 if ($opt_w =~ /^([0-9]{1,2}\%?|100\%?|[0-9]+[kMG])$/); ($warn) || usage("Invalid warning threshold: $opt_w\n"); -($opt_c) || ($opt_c = shift) || ($opt_c = 95); +($opt_c) || ($opt_c = shift @ARGV) || ($opt_c = 95); my $crit = $1 if ($opt_c =~ /^([0-9]{1,2}\%?|100\%?|[0-9]+[kMG])$/); ($crit) || usage("Invalid critical threshold: $opt_c\n"); -- 2.30.2