Code

Git commit notifications via post-receive hook
[nagiosplug.git] / plugins / utils.h
index ffdb54577d8342b06efe49971151f0034078096e..d6e9c8f7211149d46e821686953b9fea672f5ad0 100644 (file)
@@ -13,21 +13,30 @@ in order to resist overflow attacks. In addition, a few functions are
 provided to standardize version and error reporting across the entire
 suite of plugins. */
 
-/* Standardize version information, termination */
+/* now some functions etc are being defined in ../lib/utils_base.c */
+#include "utils_base.h"
 
-/* $Id$ */
+#ifdef NP_EXTRA_OPTS
+/* Include extra-opts functions if compiled in */
+#include "extra_opts.h"
+#else
+/* else, fake np_extra_opts */
+#define np_extra_opts(acptr,av,pr) av
+#endif
+
+/* Standardize version information, termination */
 
 void support (void);
-char *clean_revstring (const char *);
 void print_revision (const char *, const char *);
-void die (int, const char *, ...) __attribute__((noreturn,format(printf, 2, 3)));
 
 /* Handle timeouts */
 
 #ifdef LOCAL_TIMEOUT_ALARM_HANDLER
+extern unsigned int timeout_state;
 extern unsigned int timeout_interval;
 RETSIGTYPE timeout_alarm_handler (int);
 #else
+unsigned int timeout_state = STATE_CRITICAL;
 unsigned int timeout_interval = DEFAULT_SOCKET_TIMEOUT;
 extern RETSIGTYPE timeout_alarm_handler (int);
 #endif
@@ -74,12 +83,14 @@ char *strpcpy (char *, const char *, const char *);
 char *strpcat (char *, const char *, const char *);
 
 int max_state (int a, int b);
+int max_state_alt (int a, int b);
 
 void usage (const char *) __attribute__((noreturn));
 void usage2(const char *, const char *) __attribute__((noreturn));
 void usage3(const char *, int) __attribute__((noreturn));
-void usage4(const char *);
-void usage_va(const char *fmt, ...);
+void usage4(const char *) __attribute__((noreturn));
+void usage5(void) __attribute__((noreturn));
+void usage_va(const char *fmt, ...) __attribute__((noreturn));
 
 const char *state_text (int);
 
@@ -139,7 +150,7 @@ char *fperfdata (const char *,
 
 #define UT_HOST_PORT "\
  -H, --hostname=ADDRESS\n\
-    Host name or IP Address\n\
+    Host name, IP Address, or unix socket (must be an absolute path)\n\
  -%c, --port=INTEGER\n\
     Port number (default: %s)\n"
 
@@ -159,14 +170,36 @@ char *fperfdata (const char *,
  -c, --critical=DOUBLE\n\
     Response time to result in critical status (seconds)\n"
 
+#define UT_WARN_CRIT_RANGE "\
+ -w, --warning=RANGE\n\
+    Warning range (format: start:end). Alert if outside this range\n\
+ -c, --critical=RANGE\n\
+    Critical range\n"
+
 #define UT_TIMEOUT "\
  -t, --timeout=INTEGER\n\
     Seconds before connection times out (default: %d)\n"
 
+#ifdef NP_EXTRA_OPTS
+#define UT_EXTRA_OPTS "\
+ --extra-opts=[section][@file]\n\
+    Read additionnal options from ini file\n"
+#define UT_EXTRA_OPTS_NOTES "\
+ See: http://nagiosplugins.org/extra-opts for --extra-opts usage and examples.\n"
+#else
+#define UT_EXTRA_OPTS ""
+#define UT_EXTRA_OPTS_NOTES ""
+#endif
+
+#define UT_THRESHOLDS_NOTES "\
+ See:\n\
+ http://nagiosplug.sourceforge.net/developer-guidelines.html#THRESHOLDFORMAT\n\
+ for THRESHOLD format and examples.\n"
+
 #define UT_SUPPORT "\n\
 Send email to nagios-users@lists.sourceforge.net if you have questions\n\
 regarding use of this software. To submit patches or suggest improvements,\n\
-send email to nagiosplug-devel@lists.sourceforge.net\n"
+send email to nagiosplug-devel@lists.sourceforge.net\n\n"
 
 #define UT_NOWARRANTY "\n\
 The nagios plugins come with ABSOLUTELY NO WARRANTY. You may redistribute\n\