summaryrefslogtreecommitdiffstats
path: root/cmd.c
diff options
context:
space:
mode:
authorThomas Adam <thomas@xteddy.org>2021-08-20 22:01:46 +0100
committerThomas Adam <thomas@xteddy.org>2021-08-20 22:01:46 +0100
commitb0da0cee4d54aa64db0f49eee509a76fd89d6f68 (patch)
tree1e54ddb0b113708c46e80d342d10be74cdf7b176 /cmd.c
parent944fde7c57c4f3caebb04cfc3943a81ee9729de8 (diff)
parentd589be6c65c7295880bb84cd875baab2f77d5067 (diff)
Merge branch 'obsd-master' into master
Diffstat (limited to 'cmd.c')
-rw-r--r--cmd.c11
1 files changed, 4 insertions, 7 deletions
diff --git a/cmd.c b/cmd.c
index f35186f4..3daa705d 100644
--- a/cmd.c
+++ b/cmd.c
@@ -251,7 +251,7 @@ cmd_log_argv(int argc, char **argv, const char *fmt, ...)
/* Prepend to an argument vector. */
void
-cmd_prepend_argv(int *argc, char ***argv, char *arg)
+cmd_prepend_argv(int *argc, char ***argv, const char *arg)
{
char **new_argv;
int i;
@@ -268,7 +268,7 @@ cmd_prepend_argv(int *argc, char ***argv, char *arg)
/* Append to an argument vector. */
void
-cmd_append_argv(int *argc, char ***argv, char *arg)
+cmd_append_argv(int *argc, char ***argv, const char *arg)
{
*argv = xreallocarray(*argv, (*argc) + 1, sizeof **argv);
(*argv)[(*argc)++] = xstrdup(arg);
@@ -517,13 +517,10 @@ cmd_parse(int argc, char **argv, const char *file, u_int line, char **cause)
return (NULL);
cmd_log_argv(argc, argv, "%s: %s", __func__, entry->name);
- args = args_parse(entry->args.template, argc, argv);
+ args = args_parse(entry->args.template, argc, argv, entry->args.lower,
+ entry->args.upper);
if (args == NULL)
goto usage;
- if (entry->args.lower != -1 && args->argc < entry->args.lower)
- goto usage;
- if (entry->args.upper != -1 && args->argc > entry->args.upper)
- goto usage;
cmd = xcalloc(1, sizeof *cmd);
cmd->entry = entry;