Code

replace "terminate" with "die" for shorter name and better readability
[nagiosplug.git] / plugins / check_dummy.c
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";
41 const char *revision = "$Revision$";
42 const char *copyright = "1999-2003";
43 const char *email = "nagiosplug-devel@lists.sourceforge.net";
45 void
46 print_usage (void)
47 {
48         printf (_("Usage: %s <integer state>\n"), progname);
49 }
51 void
52 print_help (void)
53 {
54         print_revision (progname, revision);
56         printf (_(COPYRIGHT), copyright, email);
58         print_usage ();
60         printf (_(UT_HELP_VRSN));
62         printf (_("\n\
63 This plugin will simply return the state corresponding to the numeric value\n\
64 of the <state> argument.\n"));
66         support ();
67 }
69 int
70 main (int argc, char **argv)
71 {
72         int result;
74         if (argc != 2) {
75                 printf (_("Incorrect number of arguments supplied\n"));
76                 exit (STATE_UNKNOWN);
77         }
78         else if (strcmp (argv[1], "-V") == 0 || strcmp (argv[1], "--version") == 0) {
79                 print_revision (progname, revision);
80                 exit (STATE_OK);
81         }
82         else if (strcmp (argv[1], "-h") == 0 || strcmp (argv[1], "--help") == 0) {
83                 print_help ();
84                 exit (STATE_OK);
85         }
86         else if (!is_integer (argv[1])) {
87                 print_usage ();
88                 exit (STATE_UNKNOWN);
89         }
90         result = atoi (argv[1]);
92         switch (result) {
93         case STATE_OK:
94                 printf ("Status is OK\n");
95                 break;
96         case STATE_WARNING:
97                 printf ("Status is at WARNING level\n");
98                 break;
99         case STATE_CRITICAL:
100                 printf ("Status is CRITICAL\n");
101                 break;
102         default:
103                 printf ("Status is UNKNOWN\n");
104                 result = STATE_UNKNOWN;
105         }
107         return result;