aboutsummaryrefslogtreecommitdiff
path: root/plugins/check_ntp.c
diff options
context:
space:
mode:
authorGravatar Sven Nierlein <sven@nierlein.de> 2012-11-28 13:51:16 +0100
committerGravatar Sven Nierlein <sven@nierlein.de> 2012-11-28 13:51:16 +0100
commit6fde27e478207269d3b867ed36f5869ed5b86ba5 (patch)
tree8a75b8f203c3cad0fe8b40eecbe78d17642ea60e /plugins/check_ntp.c
parent24772e755e9d2a255e36eb2a97f545d2cb7ade3c (diff)
downloadmonitoring-plugins-6fde27e478207269d3b867ed36f5869ed5b86ba5.tar.gz
check_ntp(_time): don't die on connect errors
connect errors may happen if clients check agains dual stacked ipv4/6 ntp servers.
Diffstat (limited to 'plugins/check_ntp.c')
-rw-r--r--plugins/check_ntp.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/plugins/check_ntp.c b/plugins/check_ntp.c
index 7d18919f..16be7c51 100644
--- a/plugins/check_ntp.c
+++ b/plugins/check_ntp.c
@@ -398,7 +398,11 @@ double offset_request(const char *host, int *status){
die(STATE_UNKNOWN, "can not create new socket");
}
if(connect(socklist[i], ai_tmp->ai_addr, ai_tmp->ai_addrlen)){
- die(STATE_UNKNOWN, "can't create socket connection");
+ /* don't die here, because it is enough if there is one server
+ answering in time. This also would break for dual ipv4/6 stacked
+ ntp servers when the client only supports on of them.
+ */
+ DBG(printf("can't create socket connection on peer %i: %s\n", i, strerror(errno)));
} else {
ufds[i].fd=socklist[i];
ufds[i].events=POLLIN;