swanctl: Never print more than MAX_LINES of usage summary

Print a warning if a registered command exceeds that limit.
This commit is contained in:
Tobias Brunner
2015-12-16 12:09:20 +01:00
parent 50e190e8ad
commit b0f00b2a3c
+10 -1
View File
@@ -176,6 +176,15 @@ void command_register(command_t command)
"uri", 'u', 1, "service URI to connect to"
};
}
for (i = 0; cmds[registered].line[i]; i++)
{
if (i == MAX_LINES - 1)
{
fprintf(stderr, "command '%s' specifies too many usage summary "
"lines, please increase MAX_LINES\n", command.cmd);
break;
}
}
}
registered++;
}
@@ -217,7 +226,7 @@ int command_usage(char *error, ...)
}
else
{
for (i = 0; cmds[active].line[i]; i++)
for (i = 0; i < MAX_LINES && cmds[active].line[i]; i++)
{
if (i == 0)
{