Code

scanf parsing fix for check_swap from tracker id 1123292. now use floor(3)
[nagiosplug.git] / plugins / check_mrtg.c
index e13826446553254a56e17ed6a3746ed4867d5080..067429cf26eddc83518d22b2d60ddbff0d11cfbd 100644 (file)
  along with this program; if not, write to the Free Software
  Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
 
+ $Id$
 ******************************************************************************/
 
 const char *progname = "check_mrtg";
 const char *revision =  "$Revision$";
-const char *copyright = "1999-2001";
+const char *copyright = "1999-2004";
 const char *email = "nagiosplug-devel@lists.sourceforge.net";
 
 #include "common.h"
@@ -41,7 +43,7 @@ char *units;
 int
 main (int argc, char **argv)
 {
-       int result = STATE_OK;
+       int result = STATE_UNKNOWN;
        FILE *fp;
        int line;
        char input_buffer[MAX_INPUT_BUFFER];
@@ -57,8 +59,8 @@ main (int argc, char **argv)
        bindtextdomain (PACKAGE, LOCALEDIR);
        textdomain (PACKAGE);
 
-       if (process_arguments (argc, argv) != OK)
-               usage (_("Invalid command arguments supplied\n"));
+       if (process_arguments (argc, argv) == ERROR)
+               usage4 (_("Could not parse arguments\n"));
 
        /* open the MRTG log file for reading */
        fp = fopen (log_file, "r");
@@ -150,7 +152,9 @@ main (int argc, char **argv)
 
        return result;
 }
-\f
+
+
+
 /* process command-line arguments */
 int
 process_arguments (int argc, char **argv)
@@ -208,7 +212,7 @@ process_arguments (int argc, char **argv)
                case 'v':
                        variable_number = atoi (optarg);
                        if (variable_number < 1 || variable_number > 2)
-                               usage (_("Invalid variable number\n"));
+                               usage4 (_("Invalid variable number"));
                        break;
                case 'w':                                                                       /* critical time threshold */
                        value_warning_threshold = strtoul (optarg, NULL, 10);
@@ -229,7 +233,7 @@ process_arguments (int argc, char **argv)
                        print_help ();
                        exit (STATE_OK);
                case '?':                                                                       /* help */
-                       usage (_("Invalid argument\n"));
+                       usage2 (_("Unknown argument"), optarg);
                }
        }
 
@@ -287,7 +291,7 @@ int
 validate_arguments (void)
 {
        if (variable_number == -1)
-               usage (_("You must supply the variable number\n"));
+               usage4 (_("You must supply the variable number"));
 
        if (label == NULL)
                label = strdup ("value");
@@ -300,20 +304,17 @@ validate_arguments (void)
 
 
 
-
-
-\f
 void
 print_help (void)
 {
        print_revision (progname, revision);
 
-       printf (_("Copyright (c) 1999 Ethan Galstad <nagios@nagios.org>\n"));
-       printf (_(COPYRIGHT), copyright, email);
+       printf ("Copyright (c) 1999 Ethan Galstad <nagios@nagios.org>\n");
+       printf (COPYRIGHT, copyright, email);
 
        printf(_("\
 This plugin will check either the average or maximum value of one of the\n\
-two variables recorded in an MRTG log file.\n"));
+two variables recorded in an MRTG log file.\n\n"));
 
        print_usage ();
 
@@ -366,15 +367,14 @@ this plugin works well for monitoring that kind of data as well.\n\n"));
 
 
 
-
 /* original command line: 
         <log_file> <expire_minutes> <AVG|MAX> <variable> <vwl> <vcl> <label> [units] */
 
 void
 print_usage (void)
 {
-       printf (_("\
+       printf ("\
 Usage: %s -F log_file -a <AVG | MAX> -v variable -w warning -c critical\n\
-  [-l label] [-u units] [-e expire_minutes] [-t timeout] [-v]\n"), progname);
-       printf (_(UT_HLP_VRS), progname, progname);
+                  [-l label] [-u units] [-e expire_minutes] [-t timeout]\n\
+                  [-v]\n", progname);
 }