From: David Lamparter Date: Tue, 4 Apr 2017 14:12:59 +0000 (+0200) Subject: vtysh: handle "show modules" like "show memory" X-Git-Tag: frr-3.1-dev~5^2^2 X-Git-Url: https://git.puffer.fish/?a=commitdiff_plain;h=2a8e27afb8bbddeedb6eba2521a921ca1a510bd8;p=matthieu%2Ffrr.git vtysh: handle "show modules" like "show memory" Preface with line identifying which daemon it applies to. [Also fixes a missed "plugin" -> "module" replace.] Signed-off-by: David Lamparter --- diff --git a/lib/memory_vty.c b/lib/memory_vty.c index 01a41fe02e..6d63bc2d53 100644 --- a/lib/memory_vty.c +++ b/lib/memory_vty.c @@ -121,7 +121,7 @@ DEFUN (show_modules, struct frrmod_runtime *plug = frrmod_list; vty_out (vty, "%-12s %-25s %s%s%s", - "Plugin Name", "Version", "Description", + "Module Name", "Version", "Description", VTY_NEWLINE, VTY_NEWLINE); while (plug) { diff --git a/vtysh/vtysh.c b/vtysh/vtysh.c index 114022d199..1182944f8f 100644 --- a/vtysh/vtysh.c +++ b/vtysh/vtysh.c @@ -2010,29 +2010,43 @@ DEFUNSH (VTYSH_ZEBRA, return CMD_SUCCESS; } -/* Memory */ -DEFUN (vtysh_show_memory, - vtysh_show_memory_cmd, - "show memory", - SHOW_STR - "Memory statistics\n") +static int +show_per_daemon (const char *line, const char *headline) { unsigned int i; int ret = CMD_SUCCESS; - char line[] = "show memory\n"; - + for (i = 0; i < array_size(vtysh_client); i++) if ( vtysh_client[i].fd >= 0 ) { - fprintf (stdout, "Memory statistics for %s:\n", + fprintf (stdout, headline, vtysh_client[i].name); ret = vtysh_client_execute (&vtysh_client[i], line, stdout); fprintf (stdout,"\n"); } - + return ret; } +/* Memory */ +DEFUN (vtysh_show_memory, + vtysh_show_memory_cmd, + "show memory", + SHOW_STR + "Memory statistics\n") +{ + return show_per_daemon ("show memory\n", "Memory statistics for %s:\n"); +} + +DEFUN (vtysh_show_modules, + vtysh_show_modules_cmd, + "show modules", + SHOW_STR + "Loaded modules\n") +{ + return show_per_daemon ("show modules\n", "Module information for %s:\n"); +} + /* Logging commands. */ DEFUN (vtysh_show_logging, vtysh_show_logging_cmd, @@ -3388,6 +3402,7 @@ vtysh_init_vty (void) #endif install_element (VIEW_NODE, &vtysh_show_memory_cmd); + install_element (VIEW_NODE, &vtysh_show_modules_cmd); install_element (VIEW_NODE, &vtysh_show_work_queues_cmd); install_element (VIEW_NODE, &vtysh_show_work_queues_daemon_cmd);