Code

Code cleanup
[nagiosplug.git] / plugins / check_udp.c
index 8626f8c4816a81db8fa1469920345460cc8197cf..ac2210257d4f32d422fe2794b6a16063f89237f6 100644 (file)
@@ -125,7 +125,6 @@ process_arguments (int argc, char **argv)
 {
        int c;
 
-#ifdef HAVE_GETOPT_H
        int option_index = 0;
        static struct option long_options[] = {
                {"hostname", required_argument, 0, 'H'},
@@ -140,7 +139,6 @@ process_arguments (int argc, char **argv)
                {"help", no_argument, 0, 'h'},
                {0, 0, 0, 0}
        };
-#endif
 
        if (argc < 2)
                usage ("\n");
@@ -155,11 +153,10 @@ process_arguments (int argc, char **argv)
        }
 
        while (1) {
-#ifdef HAVE_GETOPT_H
-               c =     getopt_long (argc, argv, "+hVvH:e:s:c:w:t:p:", long_options, &option_index);
-#else
-               c = getopt (argc, argv, "+hVvH:e:s:c:w:t:p:");
-#endif
+               c = getopt_long (argc, argv, "+hVvH:e:s:c:w:t:p:", long_options, &option_index);
+
+               if (c == -1 || c == EOF || c == 1)
+                       break;
 
                switch (c) {
                case '?':                                                                       /* print short usage statement if args not parsable */
@@ -212,14 +209,14 @@ process_arguments (int argc, char **argv)
        }
 
        c = optind;
-       if (server_address == NULL && argv[c]) {
+       if (server_address == NULL && c < argc && argv[c]) {
                if (is_host (argv[c]) == FALSE)
                        usage ("Invalid host name/address\n");
                server_address = argv[c++];
        }
-       else {
+
+       if (server_address == NULL)
                usage ("Host name was not supplied\n");
-       }
 
        return c;
 }