From: Thomas Guyot-Sionnest Date: Mon, 16 Mar 2009 05:37:00 +0000 (-0400) Subject: check_snmp fixes: X-Git-Url: https://git.tokkee.org/?a=commitdiff_plain;h=e2aec83e61487916d32ac98bd4c3171cd6899efd;p=nagiosplug.git check_snmp fixes: - Fix broken compilation caused by typo in command ending - Remove extra whitespaces at EOL - Fix invalid host test on Ubuntu Hardy (and possibly others) --- diff --git a/plugins/check_snmp.c b/plugins/check_snmp.c index 03c2a17..3dc52df 100644 --- a/plugins/check_snmp.c +++ b/plugins/check_snmp.c @@ -106,7 +106,7 @@ char *authproto = NULL; char *privproto = NULL; char *authpasswd = NULL; char *privpasswd = NULL; -char **oids = NULL; +char **oids = NULL; char *label; char *units; char *port; @@ -186,7 +186,7 @@ main (int argc, char **argv) snmpcmd = strdup (PATH_TO_SNMPGETNEXT); }else{ snmpcmd = strdup (PATH_TO_SNMPGET); - } + } /* 9 arguments to pass before authpriv options + 1 for host and numoids. Add one for terminating NULL */ command_line = calloc (9 + numauthpriv + 1 + numoids + 1, sizeof (char *)); @@ -224,10 +224,10 @@ main (int argc, char **argv) /* Run the command */ return_code = cmd_run_array (command_line, &chld_out, &chld_err, 0); - /* Due to net-snmp sometimes showing stderr messages with poorly formed MIBs, + /* Due to net-snmp sometimes showing stderr messages with poorly formed MIBs, only return state unknown if return code is non zero or there is no stdout. Do this way so that if there is stderr, will get added to output, which helps problem diagnosis - /* + */ if (return_code != 0) external_error=1; if (chld_out.lines == 0) @@ -252,7 +252,7 @@ main (int argc, char **argv) for (i = 0; i < chld_out.lines; i++) { ptr = chld_out.line[i]; - oidname = strpcpy (oidname, ptr, delimiter); + oidname = strpcpy (oidname, ptr, delimiter); response = strstr (ptr, delimiter); /* We strip out the datatype indicator for PHBs */ diff --git a/plugins/t/check_snmp.t b/plugins/t/check_snmp.t index 4820aac..c2c965d 100644 --- a/plugins/t/check_snmp.t +++ b/plugins/t/check_snmp.t @@ -94,7 +94,7 @@ SKIP: { skip "no non invalid host defined", 2 if ( ! $hostname_invalid ); $res = NPTest->testCmd( "./check_snmp -H $hostname_invalid -C $snmp_community -o system.sysUpTime.0 -w 1: -c 1:"); cmp_ok( $res->return_code, '==', 3, "Exit UNKNOWN with non responsive host" ); - like($res->output, '/External command error: .*nosuchhost/', "String matches invalid host"); + like($res->output, '/External command error: .*(nosuchhost|Name or service not known)/', "String matches invalid host"); } }