diff options
author | Holger Weiss <holger@zedat.fu-berlin.de> | 2010-04-11 09:54:10 +0200 |
---|---|---|
committer | Holger Weiss <holger@zedat.fu-berlin.de> | 2010-04-11 09:54:10 +0200 |
commit | de7191e3424e02ba278a39b86e8b1906a25d0362 (patch) | |
tree | 71ac9b1b6c41db047f615b6b691a12e0aebf9e8e | |
parent | 1fe0f16d34e369f1a9e2dbefe1acc7448a1e1b53 (diff) | |
download | monitoring-plugins-de7191e3424e02ba278a39b86e8b1906a25d0362.tar.gz |
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.)
-rw-r--r-- | NEWS | 1 | ||||
-rw-r--r-- | THANKS.in | 1 | ||||
-rwxr-xr-x | plugins-scripts/check_disk_smb.pl | 12 |
3 files changed, 8 insertions, 6 deletions
@@ -15,6 +15,7 @@ This file documents the major additions and syntax changes between releases. | |||
15 | Fix regression introduced in #1867716 where partially valid performance strings would not be printed anymore | 15 | Fix regression introduced in #1867716 where partially valid performance strings would not be printed anymore |
16 | Fix regression in check_http ssl checks on some servers - make SNI an option | 16 | Fix regression in check_http ssl checks on some servers - make SNI an option |
17 | Fix guest mode support in check_disk_smb | 17 | Fix guest mode support in check_disk_smb |
18 | Fix check_disk_smb failure when run via ePN | ||
18 | WARNINGS | 19 | WARNINGS |
19 | Updated developer documentation to say that performance labels should not have an equals sign or | 20 | Updated developer documentation to say that performance labels should not have an equals sign or |
20 | single quote in the label | 21 | single quote in the label |
@@ -262,3 +262,4 @@ Jimmy Bergman | |||
262 | Konstantin Khomoutov | 262 | Konstantin Khomoutov |
263 | Josip Rodin | 263 | Josip Rodin |
264 | Dann Frazier | 264 | Dann Frazier |
265 | Stephane Chazelas | ||
diff --git a/plugins-scripts/check_disk_smb.pl b/plugins-scripts/check_disk_smb.pl index 022fa505..ca593d46 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 " : ""; | |||
64 | 64 | ||
65 | # Options checking | 65 | # Options checking |
66 | 66 | ||
67 | ($opt_H) || ($opt_H = shift) || usage("Host name not specified\n"); | 67 | ($opt_H) || ($opt_H = shift @ARGV) || usage("Host name not specified\n"); |
68 | my $host = $1 if ($opt_H =~ /^([-_.A-Za-z0-9 ]+\$?)$/); | 68 | my $host = $1 if ($opt_H =~ /^([-_.A-Za-z0-9 ]+\$?)$/); |
69 | ($host) || usage("Invalid host: $opt_H\n"); | 69 | ($host) || usage("Invalid host: $opt_H\n"); |
70 | 70 | ||
71 | ($opt_s) || ($opt_s = shift) || usage("Share volume not specified\n"); | 71 | ($opt_s) || ($opt_s = shift @ARGV) || usage("Share volume not specified\n"); |
72 | my $share = $1 if ($opt_s =~ /^([-_.A-Za-z0-9]+\$?)$/); | 72 | my $share = $1 if ($opt_s =~ /^([-_.A-Za-z0-9]+\$?)$/); |
73 | ($share) || usage("Invalid share: $opt_s\n"); | 73 | ($share) || usage("Invalid share: $opt_s\n"); |
74 | 74 | ||
75 | ($opt_u) || ($opt_u = shift) || ($opt_u = "guest"); | 75 | ($opt_u) || ($opt_u = shift @ARGV) || ($opt_u = "guest"); |
76 | my $user = $1 if ($opt_u =~ /^([-_.A-Za-z0-9\\]+)$/); | 76 | my $user = $1 if ($opt_u =~ /^([-_.A-Za-z0-9\\]+)$/); |
77 | ($user) || usage("Invalid user: $opt_u\n"); | 77 | ($user) || usage("Invalid user: $opt_u\n"); |
78 | 78 | ||
79 | ($opt_p) || ($opt_p = shift) || ($opt_p = ""); | 79 | ($opt_p) || ($opt_p = shift @ARGV) || ($opt_p = ""); |
80 | my $pass = $1 if ($opt_p =~ /(.*)/); | 80 | my $pass = $1 if ($opt_p =~ /(.*)/); |
81 | $pass = "-N" if ($opt_p eq ""); | 81 | $pass = "-N" if ($opt_p eq ""); |
82 | 82 | ||
83 | ($opt_w) || ($opt_w = shift) || ($opt_w = 85); | 83 | ($opt_w) || ($opt_w = shift @ARGV) || ($opt_w = 85); |
84 | my $warn = $1 if ($opt_w =~ /^([0-9]{1,2}\%?|100\%?|[0-9]+[kMG])$/); | 84 | my $warn = $1 if ($opt_w =~ /^([0-9]{1,2}\%?|100\%?|[0-9]+[kMG])$/); |
85 | ($warn) || usage("Invalid warning threshold: $opt_w\n"); | 85 | ($warn) || usage("Invalid warning threshold: $opt_w\n"); |
86 | 86 | ||
87 | ($opt_c) || ($opt_c = shift) || ($opt_c = 95); | 87 | ($opt_c) || ($opt_c = shift @ARGV) || ($opt_c = 95); |
88 | my $crit = $1 if ($opt_c =~ /^([0-9]{1,2}\%?|100\%?|[0-9]+[kMG])$/); | 88 | my $crit = $1 if ($opt_c =~ /^([0-9]{1,2}\%?|100\%?|[0-9]+[kMG])$/); |
89 | ($crit) || usage("Invalid critical threshold: $opt_c\n"); | 89 | ($crit) || usage("Invalid critical threshold: $opt_c\n"); |
90 | 90 | ||