Code

check_nt: allow returning UNKNOWN on timeouts (-u)
authorThomas Guyot-Sionnest <dermoth@aei.ca>
Wed, 25 Mar 2009 03:46:09 +0000 (23:46 -0400)
committerThomas Guyot-Sionnest <dermoth@aei.ca>
Wed, 25 Mar 2009 03:46:09 +0000 (23:46 -0400)
NEWS
plugins/check_nt.c

diff --git a/NEWS b/NEWS
index 4f3a833e562bf292982bcc9f04d0bb360c3c1dfb..e9e24a7820528060a89334920b80505c47eb907b 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -29,6 +29,7 @@ This file documents the major additions and syntax changes between releases.
        Fixed negate not printing the real timeout in ALRM handler when left to default
        negate timeout result is now configurable
        Fixed segfault in check_mysql with old slaves (#2696823 - Oskar Ahner)
+       check_nt can return UNKNOWN on timeouts (-u)
 
 1.4.13 25th Sept 2008
        Fix Debian bug #460097: check_http --max-age broken (Hilko Bengen)
index 48bdcccdac9bb0a221226df4ce5ec41eb1908e60..ec944e4c45a379d9ac6365414714a5c0247e9a42 100644 (file)
@@ -480,6 +480,7 @@ int process_arguments(int argc, char **argv){
                {"params",   required_argument,0,'l'},
                {"secret",   required_argument,0,'s'},
                {"display",  required_argument,0,'d'},
+               {"unknown-timeout", no_argument, 0, 'u'},
                {"version",  no_argument,      0,'V'},
                {"help",     no_argument,      0,'h'},
                {0,0,0,0}
@@ -506,7 +507,7 @@ int process_arguments(int argc, char **argv){
        }
 
        while (1) {
-               c = getopt_long(argc,argv,"+hVH:t:c:w:p:v:l:s:d:",longopts,&option);
+               c = getopt_long(argc,argv,"+hVH:t:c:w:p:v:l:s:d:u",longopts,&option);
 
                if (c==-1||c==EOF||c==1)
                        break;
@@ -574,6 +575,9 @@ int process_arguments(int argc, char **argv){
                                if (!strcmp(optarg,"SHOWALL"))
                                        show_all = TRUE;
                                break;
+                       case 'u':
+                               socket_timeout_state=STATE_UNKNOWN;
+                               break;
                        case 't': /* timeout */
                                socket_timeout=atoi(optarg);
                                if(socket_timeout<=0)
@@ -671,6 +675,8 @@ void print_help(void)
        printf ("   %s", _("Parameters passed to specified check (see below)"));
        printf (" %s\n", "-d, --display={SHOWALL}");
        printf ("   %s", _("Display options (currently only SHOWALL works)"));
+       printf (" %s\n", "-u, --unknown-timeout");
+       printf ("   %s", _("Return UNKNOWN on timeouts"));
        printf ("%d)\n", DEFAULT_SOCKET_TIMEOUT);
        printf (" %s\n", "-h, --help");
        printf ("   %s\n", _("Print this help screen"));
@@ -754,6 +760,6 @@ void print_usage(void)
 {
        printf (_("Usage:"));
        printf ("%s -H host -v variable [-p port] [-w warning] [-c critical]\n",progname);
-       printf ("[-l params] [-d SHOWALL] [-t timeout]\n");
+       printf ("[-l params] [-d SHOWALL] [-u] [-t timeout]\n");
 }