BUG/MEDIUM: cli: Properly handle too big payload on a command line

When command line is parsed, when the payload was too big the error was not
properly handled. Instead of leaving the parsing function to print the
error, we looped infinitly trying to parse remaining data.

When the command line is too big, we must exit the parsing function in
CLI_ST_PRINT_ERR state. Instead of exiting the function, we only left the
while loop, setting this way the cli applet in CLI_ST_PROMPT state.

This patch must be backported as far as 3.2.
This commit is contained in:
Christopher Faulet 2026-04-08 10:28:25 +02:00
parent c82b10b8d2
commit ebb801d7c8

View file

@ -994,6 +994,7 @@ int cli_parse_cmdline(struct appctx *appctx)
cli_err(appctx, "The command line is too big for the buffer size. Please change tune.bufsize in the configuration to use a bigger command.\n");
applet_set_error(appctx);
b_reset(&appctx->inbuf);
goto end;
}
break;
}