mirror of
https://github.com/monitoring-plugins/monitoring-plugins.git
synced 2026-06-08 16:26:23 -04:00
Added check for "%" in COUNTER <description>. If it exists, <description> is used as an arg to asprintf. If it doesn't exist, <description> is used as a label. If the formatting is wrong, the program will segv.
git-svn-id: https://nagiosplug.svn.sourceforge.net/svnroot/nagiosplug/nagiosplug/trunk@1053 f882894a-f735-0410-b71e-b25c423dba1c
This commit is contained in:
parent
c0a999cfed
commit
5315de2b9e
1 changed files with 8 additions and 2 deletions
|
|
@ -356,7 +356,12 @@ int main(int argc, char **argv){
|
|||
{
|
||||
/* Let's format the output string, finally... */
|
||||
|
||||
asprintf (&output_message, "%s = %.2f %s", description, counter_value, counter_unit);
|
||||
if (strstr(description, "%") == NULL) {
|
||||
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,
|
||||
|
|
@ -672,7 +677,8 @@ Windows NT/2000/XP/2003 server.\n\n"));
|
|||
Request a -l parameters with the following syntax:\n\
|
||||
-l \"\\\\<performance object>\\\\counter\",\"<description>\n\
|
||||
The <description> parameter is optional and \n\
|
||||
is given to a printf output command which require a float parameters.\n\
|
||||
is given to a printf output command which requires a float parameter.\n\
|
||||
If <description> does not include \"%%\", it is used as a label.\n\
|
||||
Some examples:\n\
|
||||
\"Paging file usage is %%.2f %%%%\"\n\
|
||||
\"%%.f %%%% paging file used.\"\n"));
|
||||
|
|
|
|||
Loading…
Reference in a new issue