From 8cb50065632541ea83097d02182385910ee37a8c Mon Sep 17 00:00:00 2001
From: Thomas Guyot-Sionnest <dermoth@users.sourceforge.net>
Date: Tue, 11 Dec 2007 13:31:22 +0000
Subject: - Fix check_ntp_peer returning misleading information when an ICMP
 message came back - Try to fix some servers apparently exanding the ~ in
 threshold ranges in t/check_ntp.t

git-svn-id: https://nagiosplug.svn.sourceforge.net/svnroot/nagiosplug/nagiosplug/trunk@1864 f882894a-f735-0410-b71e-b25c423dba1c

diff --git a/plugins/check_ntp_peer.c b/plugins/check_ntp_peer.c
index b5551ba..3e518bc 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 ae7f036..01a890e 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" );
-- 
cgit v0.10-9-g596f

