CLEANUP: cli: use srv_shutdown_streams() instead of open-coding it

The "shutdown session server" command used to open-code the list traversal
while there's already a function for this: srv_shutdown_streams(). Better
use it.
This commit is contained in:
Willy Tarreau 2019-11-14 16:37:16 +01:00
parent da52035a45
commit d9e26a7dd5

View File

@ -3849,7 +3849,6 @@ static int cli_parse_shutdown_session(char **args, char *payload, struct appctx
static int cli_parse_shutdown_sessions_server(char **args, char *payload, struct appctx *appctx, void *private) static int cli_parse_shutdown_sessions_server(char **args, char *payload, struct appctx *appctx, void *private)
{ {
struct server *sv; struct server *sv;
struct stream *strm, *strm_bck;
if (!cli_has_level(appctx, ACCESS_LVL_ADMIN)) if (!cli_has_level(appctx, ACCESS_LVL_ADMIN))
return 1; return 1;
@ -3860,9 +3859,7 @@ static int cli_parse_shutdown_sessions_server(char **args, char *payload, struct
/* kill all the stream that are on this server */ /* kill all the stream that are on this server */
HA_SPIN_LOCK(SERVER_LOCK, &sv->lock); HA_SPIN_LOCK(SERVER_LOCK, &sv->lock);
list_for_each_entry_safe(strm, strm_bck, &sv->actconns, by_srv) srv_shutdown_streams(sv, SF_ERR_KILLED);
if (strm->srv_conn == sv)
stream_shutdown(strm, SF_ERR_KILLED);
HA_SPIN_UNLOCK(SERVER_LOCK, &sv->lock); HA_SPIN_UNLOCK(SERVER_LOCK, &sv->lock);
return 1; return 1;
} }