From 2c2daa920a48441a4f752ecedf3117bfe11887e5 Mon Sep 17 00:00:00 2001 From: Richard Fuchs Date: Fri, 17 Jan 2025 14:47:58 -0400 Subject: [PATCH] MT#55283 embed help into CLI data Change-Id: Ic10a82f27653d400f75a2bcab65a7936431e2e94 --- daemon/cli.c | 209 ++++++++++++++++++++++++------------------- utils/const_str_hash | 11 ++- 2 files changed, 126 insertions(+), 94 deletions(-) diff --git a/daemon/cli.c b/daemon/cli.c index 35afe336c..c4e87da9e 100644 --- a/daemon/cli.c +++ b/daemon/cli.c @@ -41,6 +41,8 @@ struct cli_command_t { const char *cmd; cli_handler_func handler; const cli_handler_t *next; + const char *params; + const char *help; }; struct cli_handler_t { unsigned int section; @@ -143,110 +145,111 @@ static void cli_incoming_media_evict_players(str *instr, struct cli_writer *cw, #define HANDLER_START(n) static const cli_handler_t n = { .section = CSH_SECTION, .commands = (const struct cli_command_t []) { -#define HANDLER_CMD(c, f) [CSH_LOOKUP(c)] = { .cmd = c, .handler = f }, -#define HANDLER_GENERIC(c, h) [CSH_LOOKUP(c)] = { .cmd = c, .handler = cli_generic_handler, .next = &h }, +#define HANDLER_CMD(c, f, p, s) [CSH_LOOKUP(c)] = { .cmd = c, .handler = f, .params = p, .help = s }, +#define HANDLER_GENERIC(c, h) [CSH_LOOKUP(c)] = { .cmd = c, .handler = cli_generic_handler, .next = &h, .params = "