diff options
Diffstat (limited to 'plugins/check_tcp.d')
-rw-r--r-- | plugins/check_tcp.d/config.h | 84 |
1 files changed, 84 insertions, 0 deletions
diff --git a/plugins/check_tcp.d/config.h b/plugins/check_tcp.d/config.h new file mode 100644 index 00000000..dc25d79e --- /dev/null +++ b/plugins/check_tcp.d/config.h | |||
@@ -0,0 +1,84 @@ | |||
1 | #pragma once | ||
2 | |||
3 | #include "../../lib/utils_tcp.h" | ||
4 | #include "output.h" | ||
5 | #include "states.h" | ||
6 | #include <netinet/in.h> | ||
7 | |||
8 | typedef struct { | ||
9 | char *server_address; | ||
10 | bool host_specified; | ||
11 | int server_port; // TODO can this be a uint16? | ||
12 | |||
13 | int protocol; /* most common is default */ | ||
14 | char *service; | ||
15 | char *send; | ||
16 | char *quit; | ||
17 | char **server_expect; | ||
18 | size_t server_expect_count; | ||
19 | bool use_tls; | ||
20 | #ifdef HAVE_SSL | ||
21 | char *sni; | ||
22 | bool sni_specified; | ||
23 | bool check_cert; | ||
24 | int days_till_exp_warn; | ||
25 | int days_till_exp_crit; | ||
26 | #endif // HAVE_SSL | ||
27 | int match_flags; | ||
28 | mp_state_enum expect_mismatch_state; | ||
29 | unsigned int delay; | ||
30 | |||
31 | bool warning_time_set; | ||
32 | double warning_time; | ||
33 | bool critical_time_set; | ||
34 | double critical_time; | ||
35 | |||
36 | mp_state_enum econn_refuse_state; | ||
37 | |||
38 | ssize_t maxbytes; | ||
39 | |||
40 | bool hide_output; | ||
41 | |||
42 | bool output_format_set; | ||
43 | mp_output_format output_format; | ||
44 | } check_tcp_config; | ||
45 | |||
46 | check_tcp_config check_tcp_config_init() { | ||
47 | check_tcp_config result = { | ||
48 | .server_address = "127.0.0.1", | ||
49 | .host_specified = false, | ||
50 | .server_port = 0, | ||
51 | |||
52 | .protocol = IPPROTO_TCP, | ||
53 | .service = "TCP", | ||
54 | .send = NULL, | ||
55 | .quit = NULL, | ||
56 | .server_expect = NULL, | ||
57 | .server_expect_count = 0, | ||
58 | .use_tls = false, | ||
59 | #ifdef HAVE_SSL | ||
60 | .sni = NULL, | ||
61 | .sni_specified = false, | ||
62 | .check_cert = false, | ||
63 | .days_till_exp_warn = 0, | ||
64 | .days_till_exp_crit = 0, | ||
65 | #endif // HAVE_SSL | ||
66 | .match_flags = NP_MATCH_EXACT, | ||
67 | .expect_mismatch_state = STATE_WARNING, | ||
68 | .delay = 0, | ||
69 | |||
70 | .warning_time_set = false, | ||
71 | .warning_time = 0, | ||
72 | .critical_time_set = false, | ||
73 | .critical_time = 0, | ||
74 | |||
75 | .econn_refuse_state = STATE_CRITICAL, | ||
76 | |||
77 | .maxbytes = 0, | ||
78 | |||
79 | .hide_output = false, | ||
80 | |||
81 | .output_format_set = false, | ||
82 | }; | ||
83 | return result; | ||
84 | } | ||