BUG/MINOR: cli: do not perform an invalid action on "set server check-port"

The "set server <srv> check-port" CLI handler forgot to return after
detecting an error on the port number, and still proceeds with the action.
This needs to be backported to 1.7.
This commit is contained in:
Willy Tarreau 2017-11-05 09:58:50 +01:00
parent 2a858a82ec
commit 1c8980f9b5

View File

@ -4155,11 +4155,15 @@ static int cli_parse_set_server(char **args, struct appctx *appctx, void *privat
appctx->ctx.cli.severity = LOG_ERR;
appctx->ctx.cli.msg = "'set server <srv> check-port' expects an integer as argument.\n";
appctx->st0 = CLI_ST_PRINT;
SPIN_UNLOCK(SERVER_LOCK, &sv->lock);
return 1;
}
if ((i < 0) || (i > 65535)) {
appctx->ctx.cli.severity = LOG_ERR;
appctx->ctx.cli.msg = "provided port is not valid.\n";
appctx->st0 = CLI_ST_PRINT;
SPIN_UNLOCK(SERVER_LOCK, &sv->lock);
return 1;
}
/* prevent the update of port to 0 if MAPPORTS are in use */
if ((sv->flags & SRV_F_MAPPORTS) && (i == 0)) {