1 /*************************************************************
2 *
3 * CHECK_DUMMY.C
4 *
5 * Program: Dummy plugin for Nagios
6 * License: GPL
7 * Copyright (c) 1999 Ethan Galstad (nagios@nagios.org)
8 *
9 * Last Modified: $Date$
10 *
11 * Command line: CHECK_DUMMY <state>
12 *
13 * Description:
14 *
15 * This plugin will simply return the state corresponding to the
16 * numerical value of the <state> argument.
17 *
18 * License Information:
19 *
20 * This program is free software; you can redistribute it and/or modify
21 * it under the terms of the GNU General Public License as published by
22 * the Free Software Foundation; either version 2 of the License, or
23 * (at your option) any later version.
24 *
25 * This program is distributed in the hope that it will be useful,
26 * but WITHOUT ANY WARRANTY; without even the implied warranty of
27 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
28 * GNU General Public License for more details.
29 *
30 * You should have received a copy of the GNU General Public License
31 * along with this program; if not, write to the Free Software
32 * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
33 *
34 **************************************************************/
36 #include "config.h"
37 #include "common.h"
38 #include "utils.h"
40 const char *progname = "check_dummy";
42 void print_help (const char *);
43 void print_usage (const char *);
45 int
46 main (int argc, char **argv)
47 {
48 int result;
50 if (argc != 2) {
51 printf ("Incorrect number of arguments supplied\n");
52 exit (STATE_UNKNOWN);
53 }
54 else if (strcmp (argv[1], "-V") == 0 || strcmp (argv[1], "--version") == 0) {
55 print_revision (argv[0], "$Revision$");
56 exit (STATE_OK);
57 }
58 else if (strcmp (argv[1], "-h") == 0 || strcmp (argv[1], "--help") == 0) {
59 print_help (argv[0]);
60 exit (STATE_OK);
61 }
62 else if (!is_integer (argv[1])) {
63 print_usage (argv[0]);
64 exit (STATE_UNKNOWN);
65 }
66 result = atoi (argv[1]);
68 switch (result) {
69 case STATE_OK:
70 printf ("Status is OK\n");
71 break;
72 case STATE_WARNING:
73 printf ("Status is at WARNING level\n");
74 break;
75 case STATE_CRITICAL:
76 printf ("Status is CRITICAL\n");
77 break;
78 default:
79 printf ("Status is UNKNOWN\n");
80 result = STATE_UNKNOWN;
81 }
83 return result;
84 }
86 void
87 print_help (const char *cmd)
88 {
89 print_revision (cmd, "$Revision$");
90 printf ("Copyright (c) 1999 Ethan Galstad (nagios@nagios.org)\n"
91 "License: GPL\n\n");
92 print_usage (cmd);
93 printf
94 ("\nThis plugin will simply return the state corresponding to the numeric value\n"
95 "of the <state> argument.\n");
96 }
98 void
99 print_usage (const char *cmd)
100 {
101 printf ("Usage: %s <integer state>\n", cmd);
102 }