summaryrefslogtreecommitdiffstats
path: root/web/attachments/52602-nagios.time.diff
diff options
context:
space:
mode:
Diffstat (limited to 'web/attachments/52602-nagios.time.diff')
-rw-r--r--web/attachments/52602-nagios.time.diff89
1 files changed, 89 insertions, 0 deletions
diff --git a/web/attachments/52602-nagios.time.diff b/web/attachments/52602-nagios.time.diff
new file mode 100644
index 0000000..f6ccc62
--- /dev/null
+++ b/web/attachments/52602-nagios.time.diff
@@ -0,0 +1,89 @@
1--- /tmp/nagios-plugins-1.3.0/plugins/check_time.c 2003-02-15 23:48:46.000000000 +1100
2+++ nagios-plugins-1.3.0/plugins/check_time.c 2003-06-06 10:43:32.000000000 +1000
3@@ -61,7 +61,7 @@
4 int check_critical_diff = FALSE;
5 int server_port = TIME_PORT;
6 char *server_address = NULL;
7-
8+int use_udp = FALSE;
9
10 int process_arguments (int, char **);
11 void print_usage (void);
12@@ -85,7 +85,13 @@
13 time (&start_time);
14
15 /* try to connect to the host at the given port number */
16- if (my_tcp_connect (server_address, server_port, &sd) != STATE_OK) {
17+ if (use_udp) {
18+ result = my_udp_connect (server_address, server_port, &sd);
19+ } else {
20+ result = my_tcp_connect (server_address, server_port, &sd);
21+ }
22+
23+ if (result != STATE_OK) {
24 if (check_critical_time == TRUE)
25 result = STATE_CRITICAL;
26 else if (check_warning_time == TRUE)
27@@ -94,7 +100,21 @@
28 result = STATE_UNKNOWN;
29 terminate (result,
30 "TIME UNKNOWN - could not connect to server %s, port %d\n",
31- server_address, server_port);
32+ server_address, server_port);
33+ }
34+
35+ if (use_udp) {
36+ if (send (sd, "", 0, 0) < 0) {
37+ if (check_critical_time == TRUE)
38+ result = STATE_CRITICAL;
39+ else if (check_warning_time == TRUE)
40+ result = STATE_WARNING;
41+ else
42+ result = STATE_UNKNOWN;
43+ terminate (result,
44+ "TIME UNKNOWN - could not send UDP request to server %s, port %d\n",
45+ server_address, server_port);
46+ }
47 }
48
49 /* watch for the connection string */
50@@ -170,6 +190,7 @@
51 {"timeout", required_argument, 0, 't'},
52 {"version", no_argument, 0, 'V'},
53 {"help", no_argument, 0, 'h'},
54+ {"udp", no_argument, 0, 'u'},
55 {0, 0, 0, 0}
56 };
57 #endif
58@@ -193,10 +214,10 @@
59 while (1) {
60 #ifdef HAVE_GETOPT_H
61 c =
62- getopt_long (argc, argv, "hVH:w:c:W:C:p:t:", long_options,
63+ getopt_long (argc, argv, "hVH:w:c:W:C:p:t:u", long_options,
64 &option_index);
65 #else
66- c = getopt (argc, argv, "hVH:w:c:W:C:p:t:");
67+ c = getopt (argc, argv, "hVH:w:c:W:C:p:t:u");
68 #endif
69
70 if (c == -1 || c == EOF)
71@@ -275,6 +296,9 @@
72 usage ("Timeout interval must be a nonnegative integer\n");
73 socket_timeout = atoi (optarg);
74 break;
75+ case 'u':
76+ /* udp */
77+ use_udp = TRUE;
78 }
79 }
80
81@@ -338,6 +362,8 @@
82 " Seconds before connection times out (default: %d)\n"
83 " -p, --port=INTEGER\n"
84 " Port number (default: %d)\n"
85+ " -u, --udp\n"
86+ " Use UDP to connect, not TCP\n"
87 " -h, --help\n"
88 " Print detailed help screen\n"
89 " -V, --version\n"