X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=src%2Fcollectd-nagios.c;h=29e34a4ce5a413c4af48037aade685fb1616b267;hb=649197d3ed512b81472de0e8a1f310520c234b20;hp=15252b19a1ba10fc8d3e52ec384ab9f6a2903be3;hpb=2ca211b327b5e1689937a93ac6a4d0b9754d3627;p=collectd.git diff --git a/src/collectd-nagios.c b/src/collectd-nagios.c index 15252b19..29e34a4c 100644 --- a/src/collectd-nagios.c +++ b/src/collectd-nagios.c @@ -19,37 +19,14 @@ * Florian octo Forster **/ -/* Set to C99 and POSIX code */ -#ifndef _ISOC99_SOURCE -# define _ISOC99_SOURCE -#endif -#ifndef _POSIX_SOURCE -# define _POSIX_SOURCE -#endif -#ifndef _POSIX_C_SOURCE -# define _POSIX_C_SOURCE 200112L -#endif -#ifndef _REENTRANT -# define _REENTRANT -#endif - -/* Disable non-standard extensions */ -#ifdef _BSD_SOURCE -# undef _BSD_SOURCE -#endif -#ifdef _SVID_SOURCE -# undef _SVID_SOURCE -#endif -#ifdef _GNU_SOURCE -# undef _GNU_SOURCE +#if HAVE_CONFIG_H +# include "config.h" #endif #if !defined(__GNUC__) || !__GNUC__ # define __attribute__(x) /**/ #endif -#include "config.h" - #include #include #include @@ -165,7 +142,7 @@ static int filter_ds (size_t *values_num, return (RET_UNKNOWN); } - for (i = 0; i < match_ds_num_g; i++) + for (i = 0; i < (size_t) match_ds_num_g; i++) { size_t j; @@ -273,7 +250,7 @@ static void usage (const char *name) " -d Select the DS to examine. May be repeated to examine multiple\n" " DSes. By default all DSes are used.\n" " -g Method to use to consolidate several DSes.\n" - " Valid arguments are `none', `average' and `sum'\n" + " See below for a list of valid arguments.\n" " -H Hostname to query the values for.\n" " -c Critical range\n" " -w Warning range\n" @@ -284,6 +261,8 @@ static void usage (const char *name) " average: Calculate the average of all matching DSes and apply the\n" " warning- and critical-ranges to the calculated average.\n" " sum: Apply the ranges to the sum of all DSes.\n" + " percentage: Apply the ranges to the ratio (in percent) of the first value\n" + " and the sum of all values." "\n", name); exit (1); } /* void usage */ @@ -296,7 +275,7 @@ static int do_check_con_none (size_t values_num, int num_okay = 0; const char *status_str = "UNKNOWN"; int status_code = RET_UNKNOWN; - int i; + size_t i; for (i = 0; i < values_num; i++) { @@ -347,7 +326,7 @@ static int do_check_con_none (size_t values_num, static int do_check_con_average (size_t values_num, double *values, char **values_names) { - int i; + size_t i; double total; int total_num; double average; @@ -400,7 +379,7 @@ static int do_check_con_average (size_t values_num, static int do_check_con_sum (size_t values_num, double *values, char **values_names) { - int i; + size_t i; double total; int total_num; const char *status_str = "UNKNOWN"; @@ -450,7 +429,7 @@ static int do_check_con_sum (size_t values_num, static int do_check_con_percentage (size_t values_num, double *values, char **values_names) { - int i; + size_t i; double sum = 0.0; double percentage; @@ -615,7 +594,11 @@ int main (int argc, char **argv) else if (strcasecmp (optarg, "percentage") == 0) consolitation_g = CON_PERCENTAGE; else + { + fprintf (stderr, "Unknown consolidation function `%s'.\n", + optarg); usage (argv[0]); + } break; case 'd': { @@ -647,7 +630,10 @@ int main (int argc, char **argv) if ((socket_file_g == NULL) || (value_string_g == NULL) || (hostname_g == NULL)) + { + fprintf (stderr, "Missing required arguments.\n"); usage (argv[0]); + } return (do_check ()); } /* int main */