diff options
author | Thomas Guyot-Sionnest <dermoth@users.sourceforge.net> | 2007-01-06 06:41:47 (GMT) |
---|---|---|
committer | Thomas Guyot-Sionnest <dermoth@users.sourceforge.net> | 2007-01-06 06:41:47 (GMT) |
commit | 142b9da7c0b0c0b24cd3bbfbf42c4df165588869 (patch) | |
tree | 38593bcf86895c26ec6f41cec8c267540ab1c012 | |
parent | c653cd701020d9a23434cb3b713cabf308666ef8 (diff) | |
download | monitoring-plugins-142b9da7c0b0c0b24cd3bbfbf42c4df165588869.tar.gz |
Fix bug #1629008: check_ping fails to handle Packet filtered error
git-svn-id: https://nagiosplug.svn.sourceforge.net/svnroot/nagiosplug/nagiosplug/trunk@1563 f882894a-f735-0410-b71e-b25c423dba1c
-rw-r--r-- | plugins/check_ping.c | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/plugins/check_ping.c b/plugins/check_ping.c index eb3a6db..ca40920 100644 --- a/plugins/check_ping.c +++ b/plugins/check_ping.c | |||
@@ -503,10 +503,22 @@ run_ping (const char *cmd, const char *addr) | |||
503 | int | 503 | int |
504 | error_scan (char buf[MAX_INPUT_BUFFER], const char *addr) | 504 | error_scan (char buf[MAX_INPUT_BUFFER], const char *addr) |
505 | { | 505 | { |
506 | if (strstr (buf, "Network is unreachable")) | 506 | if (strstr (buf, "Network is unreachable") || |
507 | die (STATE_CRITICAL, _("CRITICAL - Network unreachable (%s)"), addr); | 507 | strstr (buf, "Destination Net Unreachable") |
508 | ) | ||
509 | die (STATE_CRITICAL, _("CRITICAL - Network Unreachable (%s)"), addr); | ||
508 | else if (strstr (buf, "Destination Host Unreachable")) | 510 | else if (strstr (buf, "Destination Host Unreachable")) |
509 | die (STATE_CRITICAL, _("CRITICAL - Host Unreachable (%s)"), addr); | 511 | die (STATE_CRITICAL, _("CRITICAL - Host Unreachable (%s)"), addr); |
512 | else if (strstr (buf, "Destination Port Unreachable")) | ||
513 | die (STATE_CRITICAL, _("CRITICAL - Bogus ICMP: Port Unreachable (%s)"), addr); | ||
514 | else if (strstr (buf, "Destination Protocol Unreachable")) | ||
515 | die (STATE_CRITICAL, _("CRITICAL - Bogus ICMP: Protocol Unreachable (%s)"), addr); | ||
516 | else if (strstr (buf, "Destination Net Prohibited")) | ||
517 | die (STATE_CRITICAL, _("CRITICAL - Network Prohibited (%s)"), addr); | ||
518 | else if (strstr (buf, "Destination Host Prohibited")) | ||
519 | die (STATE_CRITICAL, _("CRITICAL - Host Prohibited (%s)"), addr); | ||
520 | else if (strstr (buf, "Packet filtered")) | ||
521 | die (STATE_CRITICAL, _("CRITICAL - Packet Filtered (%s)"), addr); | ||
510 | else if (strstr (buf, "unknown host" )) | 522 | else if (strstr (buf, "unknown host" )) |
511 | die (STATE_CRITICAL, _("CRITICAL - Host not found (%s)"), addr); | 523 | die (STATE_CRITICAL, _("CRITICAL - Host not found (%s)"), addr); |
512 | else if (strstr (buf, "Time to live exceeded")) | 524 | else if (strstr (buf, "Time to live exceeded")) |