mirror of
https://git.haproxy.org/git/haproxy.git/
synced 2025-09-23 06:41:32 +02:00
CLEANUP: server: get rid of return statements in the CLI parser
There were two many return, some of them missing a spin_unlock call, let's use a goto to a central place instead.
This commit is contained in:
parent
a075258a2c
commit
6ce38f3eab
16
src/server.c
16
src/server.c
@ -4155,23 +4155,20 @@ static int cli_parse_set_server(char **args, struct appctx *appctx, void *privat
|
|||||||
appctx->ctx.cli.severity = LOG_ERR;
|
appctx->ctx.cli.severity = LOG_ERR;
|
||||||
appctx->ctx.cli.msg = "'set server <srv> check-port' expects an integer as argument.\n";
|
appctx->ctx.cli.msg = "'set server <srv> check-port' expects an integer as argument.\n";
|
||||||
appctx->st0 = CLI_ST_PRINT;
|
appctx->st0 = CLI_ST_PRINT;
|
||||||
SPIN_UNLOCK(SERVER_LOCK, &sv->lock);
|
goto out_unlock;
|
||||||
return 1;
|
|
||||||
}
|
}
|
||||||
if ((i < 0) || (i > 65535)) {
|
if ((i < 0) || (i > 65535)) {
|
||||||
appctx->ctx.cli.severity = LOG_ERR;
|
appctx->ctx.cli.severity = LOG_ERR;
|
||||||
appctx->ctx.cli.msg = "provided port is not valid.\n";
|
appctx->ctx.cli.msg = "provided port is not valid.\n";
|
||||||
appctx->st0 = CLI_ST_PRINT;
|
appctx->st0 = CLI_ST_PRINT;
|
||||||
SPIN_UNLOCK(SERVER_LOCK, &sv->lock);
|
goto out_unlock;
|
||||||
return 1;
|
|
||||||
}
|
}
|
||||||
/* prevent the update of port to 0 if MAPPORTS are in use */
|
/* prevent the update of port to 0 if MAPPORTS are in use */
|
||||||
if ((sv->flags & SRV_F_MAPPORTS) && (i == 0)) {
|
if ((sv->flags & SRV_F_MAPPORTS) && (i == 0)) {
|
||||||
appctx->ctx.cli.severity = LOG_ERR;
|
appctx->ctx.cli.severity = LOG_ERR;
|
||||||
appctx->ctx.cli.msg = "can't unset 'port' since MAPPORTS is in use.\n";
|
appctx->ctx.cli.msg = "can't unset 'port' since MAPPORTS is in use.\n";
|
||||||
appctx->st0 = CLI_ST_PRINT;
|
appctx->st0 = CLI_ST_PRINT;
|
||||||
SPIN_UNLOCK(SERVER_LOCK, &sv->lock);
|
goto out_unlock;
|
||||||
return 1;
|
|
||||||
}
|
}
|
||||||
sv->check.port = i;
|
sv->check.port = i;
|
||||||
appctx->ctx.cli.severity = LOG_NOTICE;
|
appctx->ctx.cli.severity = LOG_NOTICE;
|
||||||
@ -4185,8 +4182,7 @@ static int cli_parse_set_server(char **args, struct appctx *appctx, void *privat
|
|||||||
appctx->ctx.cli.severity = LOG_ERR;
|
appctx->ctx.cli.severity = LOG_ERR;
|
||||||
appctx->ctx.cli.msg = "set server <b>/<s> addr requires an address and optionally a port.\n";
|
appctx->ctx.cli.msg = "set server <b>/<s> addr requires an address and optionally a port.\n";
|
||||||
appctx->st0 = CLI_ST_PRINT;
|
appctx->st0 = CLI_ST_PRINT;
|
||||||
SPIN_UNLOCK(SERVER_LOCK, &sv->lock);
|
goto out_unlock;
|
||||||
return 1;
|
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
addr = args[4];
|
addr = args[4];
|
||||||
@ -4207,8 +4203,7 @@ static int cli_parse_set_server(char **args, struct appctx *appctx, void *privat
|
|||||||
appctx->ctx.cli.severity = LOG_ERR;
|
appctx->ctx.cli.severity = LOG_ERR;
|
||||||
appctx->ctx.cli.msg = "set server <b>/<s> fqdn requires a FQDN.\n";
|
appctx->ctx.cli.msg = "set server <b>/<s> fqdn requires a FQDN.\n";
|
||||||
appctx->st0 = CLI_ST_PRINT;
|
appctx->st0 = CLI_ST_PRINT;
|
||||||
SPIN_UNLOCK(SERVER_LOCK, &sv->lock);
|
goto out_unlock;
|
||||||
return 1;
|
|
||||||
}
|
}
|
||||||
warning = update_server_fqdn(sv, args[4], "stats socket command", 0);
|
warning = update_server_fqdn(sv, args[4], "stats socket command", 0);
|
||||||
if (warning) {
|
if (warning) {
|
||||||
@ -4222,6 +4217,7 @@ static int cli_parse_set_server(char **args, struct appctx *appctx, void *privat
|
|||||||
appctx->ctx.cli.msg = "'set server <srv>' only supports 'agent', 'health', 'state', 'weight', 'addr', 'fqdn' and 'check-port'.\n";
|
appctx->ctx.cli.msg = "'set server <srv>' only supports 'agent', 'health', 'state', 'weight', 'addr', 'fqdn' and 'check-port'.\n";
|
||||||
appctx->st0 = CLI_ST_PRINT;
|
appctx->st0 = CLI_ST_PRINT;
|
||||||
}
|
}
|
||||||
|
out_unlock:
|
||||||
SPIN_UNLOCK(SERVER_LOCK, &sv->lock);
|
SPIN_UNLOCK(SERVER_LOCK, &sv->lock);
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user