From: Willy Tarreau Date: Wed, 28 Mar 2018 16:41:30 +0000 (+0200) Subject: MINOR: cli: make "show fd" report the mux and mux_ctx pointers when available X-Git-Tag: v1.9-dev1~340 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=35b1b48c75d0589a289a15f14bf6dfa89adf6073;p=thirdparty%2Fhaproxy.git MINOR: cli: make "show fd" report the mux and mux_ctx pointers when available This is handy to quickly distinguish H2 connections as well as to easily access the h2c context. It could be backported to 1.8 to help during troubleshooting sessions. --- diff --git a/src/cli.c b/src/cli.c index f19b5f18bf..c9f2067a71 100644 --- a/src/cli.c +++ b/src/cli.c @@ -777,6 +777,8 @@ static int cli_io_handler_show_fd(struct appctx *appctx) struct listener *li = NULL; struct server *sv = NULL; struct proxy *px = NULL; + struct mux_ops *mux = NULL; + void *ctx = NULL; uint32_t conn_flags = 0; fdt = fdtab[fd]; @@ -786,6 +788,8 @@ static int cli_io_handler_show_fd(struct appctx *appctx) if (fdt.iocb == conn_fd_handler) { conn_flags = ((struct connection *)fdt.owner)->flags; + mux = ((struct connection *)fdt.owner)->mux; + ctx = ((struct connection *)fdt.owner)->mux_ctx; li = objt_listener(((struct connection *)fdt.owner)->target); sv = objt_server(((struct connection *)fdt.owner)->target); px = objt_proxy(((struct connection *)fdt.owner)->target); @@ -829,6 +833,11 @@ static int cli_io_handler_show_fd(struct appctx *appctx) chunk_appendf(&trash, " sv=%s/%s", sv->id, sv->proxy->id); else if (li) chunk_appendf(&trash, " fe=%s", li->bind_conf->frontend->id); + + if (mux) + chunk_appendf(&trash, " mux=%s mux_ctx=%p", mux->name, ctx); + else + chunk_appendf(&trash, " nomux"); } else if (fdt.iocb == listener_accept) { chunk_appendf(&trash, " l.st=%s fe=%s",