BUG/MINOR: quic: fix filtering of closing connections on "show quic"

Filtering of closing/draining connections on "show quic" was not
properly implemented. This causes the extra argument "all" to display
all connections to be without effect. This patch fixes this and restores
the output of all connections.

This must be backported up to 2.7.
This commit is contained in:
Amaury Denoyelle 2023-02-09 18:18:45 +01:00
parent 3f9758ecab
commit 10a46de620
1 changed files with 4 additions and 4 deletions

View File

@ -7636,13 +7636,13 @@ static int cli_parse_show_quic(char **args, char *payload, struct appctx *appctx
if (!cli_has_level(appctx, ACCESS_LVL_OPER)) if (!cli_has_level(appctx, ACCESS_LVL_OPER))
return 1; return 1;
if (*args[2] && strcmp(args[2], "all") == 0)
ctx->flags |= QC_CLI_FL_SHOW_ALL;
ctx->epoch = _HA_ATOMIC_FETCH_ADD(&qc_epoch, 1); ctx->epoch = _HA_ATOMIC_FETCH_ADD(&qc_epoch, 1);
ctx->thr = 0; ctx->thr = 0;
ctx->flags = 0; ctx->flags = 0;
if (*args[2] && strcmp(args[2], "all") == 0)
ctx->flags |= QC_CLI_FL_SHOW_ALL;
LIST_INIT(&ctx->bref.users); LIST_INIT(&ctx->bref.users);
return 0; return 0;
@ -7706,7 +7706,7 @@ static int cli_io_handler_dump_quic(struct appctx *appctx)
continue; continue;
} }
if (!ctx->flags & QC_CLI_FL_SHOW_ALL && if (!(ctx->flags & QC_CLI_FL_SHOW_ALL) &&
qc->flags & (QUIC_FL_CONN_CLOSING|QUIC_FL_CONN_DRAINING)) { qc->flags & (QUIC_FL_CONN_CLOSING|QUIC_FL_CONN_DRAINING)) {
ctx->bref.ref = qc->el_th_ctx.n; ctx->bref.ref = qc->el_th_ctx.n;
continue; continue;