From: Martin Willi Date: Wed, 9 Apr 2014 11:25:13 +0000 (+0200) Subject: swanctl: Fix enumeration of registered commands if MAX_COMMANDS is hit X-Git-Tag: 5.2.0dr3~8^2~16 X-Git-Url: https://git.strongswan.org/?p=strongswan.git;a=commitdiff_plain;h=250c6e3d9028a66d373bb1f6550683e0962ceec9 swanctl: Fix enumeration of registered commands if MAX_COMMANDS is hit --- diff --git a/src/swanctl/command.c b/src/swanctl/command.c index 29f6be9..e488273 100644 --- a/src/swanctl/command.c +++ b/src/swanctl/command.c @@ -80,7 +80,7 @@ static void build_opts() memset(command_optstring, 0, sizeof(command_optstring)); if (active == help_idx) { - for (i = 0; cmds[i].cmd; i++) + for (i = 0; i < MAX_COMMANDS && cmds[i].cmd; i++) { command_opts[i].name = cmds[i].cmd; command_opts[i].val = cmds[i].op; @@ -218,7 +218,7 @@ int command_usage(char *error, ...) fprintf(out, "usage:\n"); if (active == help_idx) { - for (i = 0; cmds[i].cmd; i++) + for (i = 0; i < MAX_COMMANDS && cmds[i].cmd; i++) { fprintf(out, " swanctl --%-10s (-%c) %s\n", cmds[i].cmd, cmds[i].op, cmds[i].description); @@ -292,7 +292,7 @@ int command_dispatch(int c, char *v[]) build_opts(); op = getopt_long(c, v, command_optstring, command_opts, NULL); - for (i = 0; cmds[i].cmd; i++) + for (i = 0; i < MAX_COMMANDS && cmds[i].cmd; i++) { if (cmds[i].op == op) {