From: Willy Tarreau Date: Wed, 20 Jan 2021 13:40:04 +0000 (+0100) Subject: MINOR: cli: make "show fd" also report the xprt and xprt_ctx X-Git-Tag: v2.4-dev6~41 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=37be9534245152130fad75c74133c3111a2f382b;p=thirdparty%2Fhaproxy.git MINOR: cli: make "show fd" also report the xprt and xprt_ctx These ones are definitely missing from some dumps, let's report them! We print the xprt's name instead of its useless pointer, as well as its ctx when xprt is not NULL. --- diff --git a/src/cli.c b/src/cli.c index 03f175763b..b7378019d2 100644 --- a/src/cli.c +++ b/src/cli.c @@ -1032,7 +1032,9 @@ static int cli_io_handler_show_fd(struct appctx *appctx) const struct proxy *px = NULL; const struct connection *conn = NULL; const struct mux_ops *mux = NULL; + const struct xprt_ops *xprt = NULL; const void *ctx = NULL; + const void *xprt_ctx = NULL; uint32_t conn_flags = 0; int is_back = 0; @@ -1052,6 +1054,8 @@ static int cli_io_handler_show_fd(struct appctx *appctx) conn_flags = conn->flags; mux = conn->mux; ctx = conn->ctx; + xprt = conn->xprt; + xprt_ctx = conn->xprt_ctx; li = objt_listener(conn->target); sv = objt_server(conn->target); px = objt_proxy(conn->target); @@ -1100,6 +1104,10 @@ static int cli_io_handler_show_fd(struct appctx *appctx) } else chunk_appendf(&trash, " nomux"); + + chunk_appendf(&trash, " xprt=%s", xprt ? xprt->name : ""); + if (xprt) + chunk_appendf(&trash, " xprt_ctx=%p", xprt_ctx); } else if (fdt.iocb == sock_accept_iocb) { chunk_appendf(&trash, ") l.st=%s fe=%s",