Merge pull request #1850 from sni/fix_check_snmp_multiplier

check_snmp: disable multiplier when unused
This commit is contained in:
Lorenz 2023-03-27 13:13:03 +02:00 committed by GitHub
commit ac3032a0ba
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -46,6 +46,7 @@ const char *email = "devel@monitoring-plugins.org";
#define DEFAULT_PRIV_PROTOCOL "DES"
#define DEFAULT_DELIMITER "="
#define DEFAULT_OUTPUT_DELIMITER " "
#define DEFAULT_BUFFER_SIZE 100
#define mark(a) ((a)!=0?"*":"")
@ -157,6 +158,7 @@ int perf_labels = 1;
char* ip_version = "";
double multiplier = 1.0;
char *fmtstr = "";
char buffer[DEFAULT_BUFFER_SIZE];
static char *fix_snmp_range(char *th)
{
@ -1169,15 +1171,15 @@ multiply (char *str)
double val;
char *conv = "%f";
if(multiplier == 1)
return(str);
if(verbose>2)
printf(" multiply input: %s\n", str);
val = strtod (str, &endptr);
if ((val == 0.0) && (endptr == str)) {
if(multiplier != 1) {
die(STATE_UNKNOWN, _("multiplier set (%.1f), but input is not a number: %s"), multiplier, str);
}
return str;
die(STATE_UNKNOWN, _("multiplier set (%.1f), but input is not a number: %s"), multiplier, str);
}
if(verbose>2)
@ -1187,15 +1189,15 @@ multiply (char *str)
conv = fmtstr;
}
if (val == (int)val) {
sprintf(str, "%.0f", val);
snprintf(buffer, DEFAULT_BUFFER_SIZE, "%.0f", val);
} else {
if(verbose>2)
printf(" multiply using format: %s\n", conv);
sprintf(str, conv, val);
snprintf(buffer, DEFAULT_BUFFER_SIZE, conv, val);
}
if(verbose>2)
printf(" multiply result: %s\n", str);
return str;
printf(" multiply result: %s\n", buffer);
return buffer;
}