ctdb-daemon: Exit early if there are trailing command-line arguments
authorMartin Schwenke <martin@meltin.net>
Sun, 27 Nov 2016 22:51:48 +0000 (09:51 +1100)
committerAmitay Isaacs <amitay@samba.org>
Thu, 1 Dec 2016 23:24:28 +0000 (00:24 +0100)
Signed-off-by: Martin Schwenke <martin@meltin.net>
Reviewed-by: Amitay Isaacs <amitay@gmail.com>
ctdb/server/ctdbd.c

index 99bb7152239c9a43b996f8ba1dd3bcbedf72a145..b0cbc8cd4e1be79fe0f4986a0a72a49d87aa5cbb 100644 (file)
@@ -152,7 +152,6 @@ int main(int argc, const char *argv[])
        };
        int opt, ret;
        const char **extra_argv;
-       int extra_argc = 0;
        poptContext pc;
        struct tevent_context *ev;
        enum debug_level log_level;
@@ -168,11 +167,14 @@ int main(int argc, const char *argv[])
                }
        }
 
-       /* setup the remaining options for the main program to use */
+       /* If there are extra arguments then exit with usage message */
        extra_argv = poptGetArgs(pc);
        if (extra_argv) {
                extra_argv++;
-               while (extra_argv[extra_argc]) extra_argc++;
+               if (extra_argv[0])  {
+                       poptPrintHelp(pc, stdout, 0);
+                       exit(1);
+               }
        }
 
        talloc_enable_null_tracking();