diff options
| author | Lorenz Kästle <12514511+RincewindsHat@users.noreply.github.com> | 2025-03-09 11:32:40 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-03-09 11:32:40 +0100 |
| commit | 6dbc84f93595be81aee4de4ac3122b942047c22d (patch) | |
| tree | 885f684a971bdc9dcc9fb608454660ff343f6704 /lib | |
| parent | 1d55c2279731766a837b4973f3da79b3e3a6bd90 (diff) | |
| parent | 0426b8947d9e03375219074c3741616599651db4 (diff) | |
| download | monitoring-plugins-6dbc84f93595be81aee4de4ac3122b942047c22d.tar.gz | |
Merge pull request #2071 from RincewindsHat/refactor/check_ssh
Refactor/check ssh
Diffstat (limited to 'lib')
| -rw-r--r-- | lib/output.c | 12 | ||||
| -rw-r--r-- | lib/output.h | 7 |
2 files changed, 15 insertions, 4 deletions
diff --git a/lib/output.c b/lib/output.c index 17919afc..61fbf832 100644 --- a/lib/output.c +++ b/lib/output.c | |||
| @@ -11,6 +11,9 @@ | |||
| 11 | #include "perfdata.h" | 11 | #include "perfdata.h" |
| 12 | #include "states.h" | 12 | #include "states.h" |
| 13 | 13 | ||
| 14 | // == Global variables | ||
| 15 | static mp_output_format output_format = MP_FORMAT_DEFAULT; | ||
| 16 | |||
| 14 | // == Prototypes == | 17 | // == Prototypes == |
| 15 | static char *fmt_subcheck_output(mp_output_format output_format, mp_subcheck check, unsigned int indentation); | 18 | static char *fmt_subcheck_output(mp_output_format output_format, mp_subcheck check, unsigned int indentation); |
| 16 | static inline cJSON *json_serialize_subcheck(mp_subcheck subcheck); | 19 | static inline cJSON *json_serialize_subcheck(mp_subcheck subcheck); |
| @@ -55,7 +58,6 @@ static inline char *fmt_subcheck_perfdata(mp_subcheck check) { | |||
| 55 | */ | 58 | */ |
| 56 | mp_check mp_check_init(void) { | 59 | mp_check mp_check_init(void) { |
| 57 | mp_check check = {0}; | 60 | mp_check check = {0}; |
| 58 | check.format = MP_FORMAT_DEFAULT; | ||
| 59 | return check; | 61 | return check; |
| 60 | } | 62 | } |
| 61 | 63 | ||
| @@ -234,7 +236,7 @@ mp_state_enum mp_compute_check_state(const mp_check check) { | |||
| 234 | char *mp_fmt_output(mp_check check) { | 236 | char *mp_fmt_output(mp_check check) { |
| 235 | char *result = NULL; | 237 | char *result = NULL; |
| 236 | 238 | ||
| 237 | switch (check.format) { | 239 | switch (output_format) { |
| 238 | case MP_FORMAT_MULTI_LINE: { | 240 | case MP_FORMAT_MULTI_LINE: { |
| 239 | if (check.summary == NULL) { | 241 | if (check.summary == NULL) { |
| 240 | check.summary = get_subcheck_summary(check); | 242 | check.summary = get_subcheck_summary(check); |
| @@ -482,7 +484,7 @@ void mp_print_output(mp_check check) { puts(mp_fmt_output(check)); } | |||
| 482 | */ | 484 | */ |
| 483 | void mp_exit(mp_check check) { | 485 | void mp_exit(mp_check check) { |
| 484 | mp_print_output(check); | 486 | mp_print_output(check); |
| 485 | if (check.format == MP_FORMAT_TEST_JSON) { | 487 | if (output_format == MP_FORMAT_TEST_JSON) { |
| 486 | exit(0); | 488 | exit(0); |
| 487 | } | 489 | } |
| 488 | 490 | ||
| @@ -533,3 +535,7 @@ parsed_output_format mp_parse_output_format(char *format_string) { | |||
| 533 | 535 | ||
| 534 | return result; | 536 | return result; |
| 535 | } | 537 | } |
| 538 | |||
| 539 | void mp_set_format(mp_output_format format) { output_format = format; } | ||
| 540 | |||
| 541 | mp_output_format mp_get_format(void) { return output_format; } | ||
diff --git a/lib/output.h b/lib/output.h index ffc36f53..2bdfa074 100644 --- a/lib/output.h +++ b/lib/output.h | |||
| @@ -36,13 +36,18 @@ typedef enum output_format { | |||
| 36 | #define MP_FORMAT_DEFAULT MP_FORMAT_MULTI_LINE | 36 | #define MP_FORMAT_DEFAULT MP_FORMAT_MULTI_LINE |
| 37 | 37 | ||
| 38 | /* | 38 | /* |
| 39 | * Format related functions | ||
| 40 | */ | ||
| 41 | void mp_set_format(mp_output_format format); | ||
| 42 | mp_output_format mp_get_format(void); | ||
| 43 | |||
| 44 | /* | ||
| 39 | * The main state object of a plugin. Exists only ONCE per plugin. | 45 | * The main state object of a plugin. Exists only ONCE per plugin. |
| 40 | * This is the "root" of a tree of singular checks. | 46 | * This is the "root" of a tree of singular checks. |
| 41 | * The final result is always derived from the children and the "worst" state | 47 | * The final result is always derived from the children and the "worst" state |
| 42 | * in the first layer of subchecks | 48 | * in the first layer of subchecks |
| 43 | */ | 49 | */ |
| 44 | typedef struct { | 50 | typedef struct { |
| 45 | mp_output_format format; // The output format | ||
| 46 | char *summary; // Overall summary, if not set a summary will be automatically generated | 51 | char *summary; // Overall summary, if not set a summary will be automatically generated |
| 47 | mp_subcheck_list *subchecks; | 52 | mp_subcheck_list *subchecks; |
| 48 | } mp_check; | 53 | } mp_check; |
