From a396d2177806ac4ee9f524a139b19ad29c76ca91 Mon Sep 17 00:00:00 2001 From: Karl DeBisschop Date: Sun, 20 Oct 2002 18:49:00 +0000 Subject: [PATCH] change ssprintf to asprintf back out change at line 225 in r1.4 (values were mismatched to format string, so output was nonsense) (I left a comment showing a construct that should work, but it fails for PHBs: if my disk gets nearly full, they want 'CRITICAL - 99%' not 'CRITICAL - Gauge32: 99') (If someine has a rationale for the change, maybe it could be done as an option? - it seems fairly clear that the Web display should be sensible to PHBs so long as there's no real loss) git-svn-id: https://nagiosplug.svn.sourceforge.net/svnroot/nagiosplug/nagiosplug/trunk@143 f882894a-f735-0410-b71e-b25c423dba1c --- plugins/check_snmp.c | 19 ++++++++----------- 1 file changed, 8 insertions(+), 11 deletions(-) diff --git a/plugins/check_snmp.c b/plugins/check_snmp.c index eae52ca..220be23 100644 --- a/plugins/check_snmp.c +++ b/plugins/check_snmp.c @@ -144,8 +144,8 @@ main (int argc, char **argv) usage ("Incorrect arguments supplied\n"); /* create the command line to execute */ - command_line = ssprintf - (command_line, + asprintf + (&command_line, "%s -p %s -m ALL -v 1 %s -c %s %s", PATH_TO_SNMPGET, port, server_address, community, oid); @@ -221,8 +221,8 @@ main (int argc, char **argv) p2 = strpbrk (p2, "0123456789"); response_value[i] = strtoul (p2, NULL, 10); iresult = check_num (i); - /*For consistency- full SNMP response every time */ - show = ssprintf (show, "%d", response); + asprintf (&show, "%lu", response_value[i]); + /*asprintf (&show, "%s", response); */ } else if (eval_method[i] & CRIT_STRING) { @@ -264,21 +264,18 @@ main (int argc, char **argv) result = max_state (result, iresult); if (nlabels > 1 && i < nlabels && labels[i] != NULL) - outbuff = ssprintf - (outbuff, + asprintf + (&outbuff, "%s%s%s %s%s%s", outbuff, (i == 0) ? " " : output_delim, labels[i], mark (iresult), show, mark (iresult)); else - outbuff = ssprintf - (outbuff, - "%s%s%s%s%s", - outbuff, + asprintf (&outbuff, "%s%s%s%s%s", outbuff, (i == 0) ? " " : output_delim, mark (iresult), show, mark (iresult)); if (nunits > 0 && i < nunits) - outbuff = ssprintf (outbuff, "%s %s", outbuff, unitv[i]); + asprintf (&outbuff, "%s %s", outbuff, unitv[i]); i++; -- 2.30.2