diff options
-rw-r--r-- | plugins/check_ntp_peer.c | 3 | ||||
-rw-r--r-- | plugins/t/check_ntp.t | 4 |
2 files changed, 4 insertions, 3 deletions
diff --git a/plugins/check_ntp_peer.c b/plugins/check_ntp_peer.c index b5551ba8..3e518bc2 100644 --- a/plugins/check_ntp_peer.c +++ b/plugins/check_ntp_peer.c @@ -264,7 +264,8 @@ int ntp_request(const char *host, double *offset, int *offset_result, double *ji /* Attempt to read the largest size packet possible */ req.count=htons(MAX_CM_SIZE); DBG(printf("recieving READSTAT response")) - read(conn, &req, SIZEOF_NTPCM(req)); + if(read(conn, &req, SIZEOF_NTPCM(req)) == -1) + die(STATE_CRITICAL, "NTP CRITICAL: No response from NTP server\n"); DBG(print_ntp_control_message(&req)); /* Each peer identifier is 4 bytes in the data section, which * we represent as a ntp_assoc_status_pair datatype. diff --git a/plugins/t/check_ntp.t b/plugins/t/check_ntp.t index ae7f0369..01a890e3 100644 --- a/plugins/t/check_ntp.t +++ b/plugins/t/check_ntp.t @@ -97,13 +97,13 @@ foreach my $plugin (@PLUGINS2) { like( $res->output, $ntp_okmatch2, "$plugin: Output match OK with jitter and stratum" ); $res = NPTest->testCmd( - "./$plugin -H $ntp_service -w 1000 -c 2000 -W ~:-1 -C 21 -j 100000 -k 200000" + "./$plugin -H $ntp_service -w 1000 -c 2000 -W \~:-1 -C 21 -j 100000 -k 200000" ); cmp_ok( $res->return_code, '==', 1, "$plugin: Warning NTP result with jitter and stratum check" ); like( $res->output, $ntp_warnmatch2, "$plugin: Output match WARNING with jitter and stratum" ); $res = NPTest->testCmd( - "./$plugin -H $ntp_service -w 1000 -c 2000 -W 20 -C 21 -j 100000 -k ~:-1" + "./$plugin -H $ntp_service -w 1000 -c 2000 -W 20 -C 21 -j 100000 -k \~:-1" ); cmp_ok( $res->return_code, '==', 2, "$plugin: Critical NTP result with jitter and stratum check" ); like( $res->output, $ntp_critmatch2, "$plugin: Output match CRITICAL with jitter and stratum" ); |