summaryrefslogtreecommitdiffstats
path: root/plugins-scripts
diff options
context:
space:
mode:
authorHolger Weiss <holger@zedat.fu-berlin.de>2014-01-13 21:55:43 (GMT)
committerHolger Weiss <holger@zedat.fu-berlin.de>2014-01-13 21:55:43 (GMT)
commit9db763963f3993f923619a2147e4313b09f12134 (patch)
tree7de03645f44f5b5ec42bb8894b0c5b3165196e25 /plugins-scripts
parent20b598da6ee238a608c17524c4483fea1b14a4fa (diff)
downloadmonitoring-plugins-9db763963f3993f923619a2147e4313b09f12134.tar.gz
utils.sh: Don't define $ECHO
In utils.sh, $ECHO was set to printf(1) or echo(1), depending on whether printf(1) is available in /usr/bin. This resulted in various bugs, as printf(1) cannot be used in the same way as echo(1). Thanks to Trevor Hemsley for reporting one of those bugs: If $ECHO was set to printf(1), check_log stumbled when reporting a log line with a "%" character.
Diffstat (limited to 'plugins-scripts')
-rwxr-xr-xplugins-scripts/check_log.sh11
-rw-r--r--plugins-scripts/utils.sh.in10
2 files changed, 7 insertions, 14 deletions
diff --git a/plugins-scripts/check_log.sh b/plugins-scripts/check_log.sh
index a1bfb48..ca5810a 100755
--- a/plugins-scripts/check_log.sh
+++ b/plugins-scripts/check_log.sh
@@ -60,7 +60,6 @@
60# TV: removed PATH restriction. Need to think more about what this means overall 60# TV: removed PATH restriction. Need to think more about what this means overall
61#PATH="" 61#PATH=""
62 62
63ECHO="/bin/echo"
64GREP="/bin/egrep" 63GREP="/bin/egrep"
65DIFF="/bin/diff" 64DIFF="/bin/diff"
66TAIL="/bin/tail" 65TAIL="/bin/tail"
@@ -167,10 +166,10 @@ done
167# If the source log file doesn't exist, exit 166# If the source log file doesn't exist, exit
168 167
169if [ ! -e $logfile ]; then 168if [ ! -e $logfile ]; then
170 $ECHO "Log check error: Log file $logfile does not exist!\n" 169 echo "Log check error: Log file $logfile does not exist!"
171 exit $STATE_UNKNOWN 170 exit $STATE_UNKNOWN
172elif [ ! -r $logfile ] ; then 171elif [ ! -r $logfile ] ; then
173 $ECHO "Log check error: Log file $logfile is not readable!\n" 172 echo "Log check error: Log file $logfile is not readable!"
174 exit $STATE_UNKNOWN 173 exit $STATE_UNKNOWN
175fi 174fi
176 175
@@ -180,7 +179,7 @@ fi
180 179
181if [ ! -e $oldlog ]; then 180if [ ! -e $oldlog ]; then
182 $CAT $logfile > $oldlog 181 $CAT $logfile > $oldlog
183 $ECHO "Log check data initialized...\n" 182 echo "Log check data initialized..."
184 exit $STATE_OK 183 exit $STATE_OK
185fi 184fi
186 185
@@ -209,10 +208,10 @@ $RM -f $tempdiff
209$CAT $logfile > $oldlog 208$CAT $logfile > $oldlog
210 209
211if [ "$count" = "0" ]; then # no matches, exit with no error 210if [ "$count" = "0" ]; then # no matches, exit with no error
212 $ECHO "Log check ok - 0 pattern matches found\n" 211 echo "Log check ok - 0 pattern matches found"
213 exitstatus=$STATE_OK 212 exitstatus=$STATE_OK
214else # Print total matche count and the last entry we found 213else # Print total matche count and the last entry we found
215 $ECHO "($count) $lastentry" 214 echo "($count) $lastentry"
216 exitstatus=$STATE_CRITICAL 215 exitstatus=$STATE_CRITICAL
217fi 216fi
218 217
diff --git a/plugins-scripts/utils.sh.in b/plugins-scripts/utils.sh.in
index 4a07df8..031c035 100644
--- a/plugins-scripts/utils.sh.in
+++ b/plugins-scripts/utils.sh.in
@@ -6,19 +6,13 @@ STATE_CRITICAL=2
6STATE_UNKNOWN=3 6STATE_UNKNOWN=3
7STATE_DEPENDENT=4 7STATE_DEPENDENT=4
8 8
9if test -x /usr/bin/printf; then
10 ECHO=/usr/bin/printf
11else
12 ECHO=echo
13fi
14
15print_revision() { 9print_revision() {
16 echo "$1 v$2 (@PACKAGE@ @VERSION@)" 10 echo "$1 v$2 (@PACKAGE@ @VERSION@)"
17 $ECHO "@WARRANTY@" | sed -e 's/\n/ /g' 11 printf '%b' "@WARRANTY@"
18} 12}
19 13
20support() { 14support() {
21 $ECHO "@SUPPORT@" | sed -e 's/\n/ /g' 15 printf '%b' "@SUPPORT@"
22} 16}
23 17
24# 18#