summaryrefslogtreecommitdiffstats
path: root/plugins/check_snmp.c
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/check_snmp.c')
-rw-r--r--plugins/check_snmp.c14
1 files changed, 10 insertions, 4 deletions
diff --git a/plugins/check_snmp.c b/plugins/check_snmp.c
index e8a21a4..58d46b1 100644
--- a/plugins/check_snmp.c
+++ b/plugins/check_snmp.c
@@ -468,6 +468,9 @@ main (int argc, char **argv)
468 /* Process this block for numeric comparisons */ 468 /* Process this block for numeric comparisons */
469 /* Make some special values,like Timeticks numeric only if a threshold is defined */ 469 /* Make some special values,like Timeticks numeric only if a threshold is defined */
470 if (thlds[i]->warning || thlds[i]->critical || calculate_rate) { 470 if (thlds[i]->warning || thlds[i]->critical || calculate_rate) {
471 if (verbose > 2) {
472 print_thresholds(" thresholds", thlds[i]);
473 }
471 ptr = strpbrk (show, "-0123456789"); 474 ptr = strpbrk (show, "-0123456789");
472 if (ptr == NULL) 475 if (ptr == NULL)
473 die (STATE_UNKNOWN,_("No valid data returned (%s)\n"), show); 476 die (STATE_UNKNOWN,_("No valid data returned (%s)\n"), show);
@@ -576,20 +579,23 @@ main (int argc, char **argv)
576 len = sizeof(perfstr)-strlen(perfstr)-1; 579 len = sizeof(perfstr)-strlen(perfstr)-1;
577 strncat(perfstr, show, len>ptr-show ? ptr-show : len); 580 strncat(perfstr, show, len>ptr-show ? ptr-show : len);
578 581
582 if (type)
583 strncat(perfstr, type, sizeof(perfstr)-strlen(perfstr)-1);
584
579 if (warning_thresholds) { 585 if (warning_thresholds) {
580 strncat(perfstr, ";", sizeof(perfstr)-strlen(perfstr)-1); 586 strncat(perfstr, ";", sizeof(perfstr)-strlen(perfstr)-1);
581 strncat(perfstr, warning_thresholds, sizeof(perfstr)-strlen(perfstr)-1); 587 if(thlds[i]->warning && thlds[i]->warning->text)
588 strncat(perfstr, thlds[i]->warning->text, sizeof(perfstr)-strlen(perfstr)-1);
582 } 589 }
583 590
584 if (critical_thresholds) { 591 if (critical_thresholds) {
585 if (!warning_thresholds) 592 if (!warning_thresholds)
586 strncat(perfstr, ";", sizeof(perfstr)-strlen(perfstr)-1); 593 strncat(perfstr, ";", sizeof(perfstr)-strlen(perfstr)-1);
587 strncat(perfstr, ";", sizeof(perfstr)-strlen(perfstr)-1); 594 strncat(perfstr, ";", sizeof(perfstr)-strlen(perfstr)-1);
588 strncat(perfstr, critical_thresholds, sizeof(perfstr)-strlen(perfstr)-1); 595 if(thlds[i]->critical && thlds[i]->critical->text)
596 strncat(perfstr, thlds[i]->critical->text, sizeof(perfstr)-strlen(perfstr)-1);
589 } 597 }
590 598
591 if (type)
592 strncat(perfstr, type, sizeof(perfstr)-strlen(perfstr)-1);
593 strncat(perfstr, " ", sizeof(perfstr)-strlen(perfstr)-1); 599 strncat(perfstr, " ", sizeof(perfstr)-strlen(perfstr)-1);
594 } 600 }
595 } 601 }