From: Girts Date: Sat, 5 Nov 2016 21:38:55 +0000 (-0700) Subject: helper/options.c: fail if unexpected cmdline arguments are present X-Git-Tag: v0.11.0-rc1~1423 X-Git-Url: https://review.openocd.org/gitweb?p=openocd.git;a=commitdiff_plain;h=b90d58db07459a353d20b052bd1e4732fec03aa5 helper/options.c: fail if unexpected cmdline arguments are present Previously openocd would silently ignore any incorrect arguments. Change-Id: Ibb40b57b8a9e07d191215486f3b3c4920a9963c7 Signed-off-by: Girts Folkmanis Reviewed-on: http://openocd.zylin.com/3879 Tested-by: jenkins Reviewed-by: Tomas Vanek --- diff --git a/src/helper/options.c b/src/helper/options.c index 0016659148..1cfa55376a 100644 --- a/src/helper/options.c +++ b/src/helper/options.c @@ -291,9 +291,18 @@ int parse_cmdline_args(struct command_context *cmd_ctx, int argc, char *argv[]) LOG_WARNING("deprecated option: -p/--pipe. Use '-c \"gdb_port pipe; " "log_output openocd.log\"' instead."); break; + default: /* '?' */ + /* getopt will emit an error message, all we have to do is bail. */ + return ERROR_FAIL; } } + if (optind < argc) { + /* Catch extra arguments on the command line. */ + LOG_OUTPUT("Unexpected command line argument: %s\n", argv[optind]); + return ERROR_FAIL; + } + if (help_flag) { LOG_OUTPUT("Open On-Chip Debugger\nLicensed under GNU GPL v2\n"); LOG_OUTPUT("--help | -h\tdisplay this help\n");