aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--plugins/check_dns.c17
1 files changed, 13 insertions, 4 deletions
diff --git a/plugins/check_dns.c b/plugins/check_dns.c
index a2a92f41..31a953d7 100644
--- a/plugins/check_dns.c
+++ b/plugins/check_dns.c
@@ -242,14 +242,23 @@ main (int argc, char **argv)
}
printf (ngettext("%.3f second response time", "%.3f seconds response time", elapsed_time), elapsed_time);
printf (_(". %s returns %s"), query_address, address);
- if ((time_thresholds->warning == NULL) || (time_thresholds->critical == NULL)) {
- printf ("|%s\n", fperfdata ("time", elapsed_time, "s", FALSE, 0, FALSE, 0, TRUE, 0, FALSE, 0));
- } else {
+ if ((time_thresholds->warning != NULL) && (time_thresholds->critical != NULL)) {
printf ("|%s\n", fperfdata ("time", elapsed_time, "s",
TRUE, time_thresholds->warning->end,
TRUE, time_thresholds->critical->end,
TRUE, 0, FALSE, 0));
- }
+ } else if ((time_thresholds->warning == NULL) && (time_thresholds->critical != NULL)) {
+ printf ("|%s\n", fperfdata ("time", elapsed_time, "s",
+ FALSE, 0,
+ TRUE, time_thresholds->critical->end,
+ TRUE, 0, FALSE, 0));
+ } else if ((time_thresholds->warning != NULL) && (time_thresholds->critical == NULL)) {
+ printf ("|%s\n", fperfdata ("time", elapsed_time, "s",
+ TRUE, time_thresholds->warning->end,
+ FALSE, 0,
+ TRUE, 0, FALSE, 0));
+ } else
+ printf ("|%s\n", fperfdata ("time", elapsed_time, "s", FALSE, 0, FALSE, 0, TRUE, 0, FALSE, 0));
}
else if (result == STATE_WARNING)
printf (_("DNS WARNING - %s\n"),