From 3f0fd90ba88f7ad7c25dad0a97d43c7f1ad7e0c6 Mon Sep 17 00:00:00 2001
From: Harper Mann <harpermann@users.sourceforge.net>
Date: Wed, 19 Jan 2005 23:39:45 +0000
Subject: In the CHECK_COUNTER block, there were several strcats writing to
 unallocated memory.  Changed to asprintf. We're not freeing since plugin run
 is short.

git-svn-id: https://nagiosplug.svn.sourceforge.net/svnroot/nagiosplug/nagiosplug/trunk@1085 f882894a-f735-0410-b71e-b25c423dba1c

diff --git a/plugins/check_nt.c b/plugins/check_nt.c
index cac826f..1bdddc4 100644
--- a/plugins/check_nt.c
+++ b/plugins/check_nt.c
@@ -355,19 +355,18 @@ int main(int argc, char **argv){
 	  		if (allRight)
 	    		{
 	      			/* Let's format the output string, finally... */
-
 					if (strstr(description, "%") == NULL) {
-						asprintf (&output_message, "%s = %.2f %s", description, counter_value, counter_unit);
+						asprintf (&output_message, "%s = %.2f %s", 											description, counter_value, counter_unit);
 					} else {
 						/* has formatting, will segv if wrong */
 	      				asprintf (&output_message, description, counter_value);
 					}
-	      			output_message = strcat (output_message, "|");
-	      			output_message = strcat (output_message,
-							fperfdata (description, counter_value, counter_unit,
-				   				   1, warning_value, 1, critical_value,
-				   				   (!(isPercent) && (minval != NULL)), fminval,
-				   				   (!(isPercent) && (minval != NULL)), fmaxval));
+					asprintf (&output_message, "%s |", output_message);
+	      			asprintf (&output_message,"%s %s", output_message, 
+						fperfdata (description, counter_value, 
+							counter_unit, 1, warning_value, 1, critical_value,
+				   			(!(isPercent) && (minval != NULL)), fminval,
+				   			(!(isPercent) && (minval != NULL)), fmaxval));
 	    		}
 		}
 
-- 
cgit v0.10-9-g596f

