diff options
Diffstat (limited to 'web/attachments/37375-check_vsz.c.patch')
| -rw-r--r-- | web/attachments/37375-check_vsz.c.patch | 82 |
1 files changed, 82 insertions, 0 deletions
diff --git a/web/attachments/37375-check_vsz.c.patch b/web/attachments/37375-check_vsz.c.patch new file mode 100644 index 0000000..6a0488a --- /dev/null +++ b/web/attachments/37375-check_vsz.c.patch | |||
| @@ -0,0 +1,82 @@ | |||
| 1 | --- check_vsz.c.original Sat Dec 7 17:21:29 2002 | ||
| 2 | +++ check_vsz.c Sat Dec 7 17:20:44 2002 | ||
| 3 | @@ -63,7 +63,7 @@ | ||
| 4 | char proc_name[MAX_INPUT_BUFFER]; | ||
| 5 | char *message = ""; | ||
| 6 | |||
| 7 | - if (!process_arguments (argc, argv)) { | ||
| 8 | + if (process_arguments (argc, argv) == ERROR ) { | ||
| 9 | printf ("%s: failure parsing arguments\n", my_basename (argv[0])); | ||
| 10 | print_help (my_basename (argv[0])); | ||
| 11 | return STATE_UNKNOWN; | ||
| 12 | @@ -94,7 +94,7 @@ | ||
| 13 | asprintf (&message, "%s %s(%d)", message, proc_name, proc_size); | ||
| 14 | result = max_state (result, STATE_WARNING); | ||
| 15 | } | ||
| 16 | - if (proc_size > crit) { | ||
| 17 | + if (crit != -1 && proc_size > crit) { | ||
| 18 | result = STATE_CRITICAL; | ||
| 19 | } | ||
| 20 | } | ||
| 21 | @@ -103,7 +103,7 @@ | ||
| 22 | if (proc_size > warn) { | ||
| 23 | result = max_state (result, STATE_WARNING); | ||
| 24 | } | ||
| 25 | - if (proc_size > crit) { | ||
| 26 | + if (crit != -1 && proc_size > crit) { | ||
| 27 | result = STATE_CRITICAL; | ||
| 28 | } | ||
| 29 | } | ||
| 30 | @@ -121,7 +121,7 @@ | ||
| 31 | result = max_state (result, STATE_WARNING); | ||
| 32 | |||
| 33 | if (result == STATE_OK) | ||
| 34 | - printf ("ok (all VSZ<%d): %s\n", warn, message); | ||
| 35 | + printf ("OK (all VSZ<%d): %s\n", warn, message); | ||
| 36 | else if (result == STATE_UNKNOWN) | ||
| 37 | printf ("Unable to read output\n"); | ||
| 38 | else if (result == STATE_WARNING) | ||
| 39 | @@ -166,7 +166,6 @@ | ||
| 40 | |||
| 41 | switch (c) { | ||
| 42 | case '?': /* help */ | ||
| 43 | - printf ("%s: Unknown argument: %s\n\n", my_basename (argv[0]), optarg); | ||
| 44 | print_usage (my_basename (argv[0])); | ||
| 45 | exit (STATE_UNKNOWN); | ||
| 46 | case 'h': /* help */ | ||
| 47 | @@ -200,7 +199,7 @@ | ||
| 48 | } | ||
| 49 | |||
| 50 | c = optind; | ||
| 51 | - if (warn == -1) { | ||
| 52 | + if (warn == -1 && argv[c]) { | ||
| 53 | if (!is_intnonneg (argv[c])) { | ||
| 54 | printf ("%s: critical threshold must be an integer: %s\n", | ||
| 55 | PROGNAME, argv[c]); | ||
| 56 | @@ -210,7 +209,7 @@ | ||
| 57 | warn = atoi (argv[c++]); | ||
| 58 | } | ||
| 59 | |||
| 60 | - if (crit == -1) { | ||
| 61 | + if (crit == -1 && argv[c]) { | ||
| 62 | if (!is_intnonneg (argv[c])) { | ||
| 63 | printf ("%s: critical threshold must be an integer: %s\n", | ||
| 64 | PROGNAME, argv[c]); | ||
| 65 | @@ -222,6 +221,17 @@ | ||
| 66 | |||
| 67 | if (proc == NULL) | ||
| 68 | proc = argv[c]; | ||
| 69 | + | ||
| 70 | + // Validate arguments | ||
| 71 | + if (warn == -1) { | ||
| 72 | + if (crit != -1) | ||
| 73 | + warn = crit; | ||
| 74 | + else { | ||
| 75 | + printf ("%s: Must specify a critical or warning threshold\n", PROGNAME); | ||
| 76 | + print_usage (PROGNAME); | ||
| 77 | + exit (STATE_UNKNOWN); | ||
| 78 | + } | ||
| 79 | + } | ||
| 80 | |||
| 81 | return c; | ||
| 82 | } | ||
