From af1d4cb5a812092152c50f7373e1fa877dc8d060 Mon Sep 17 00:00:00 2001 From: Harald Welte Date: Thu, 13 May 2010 12:32:30 +0200 Subject: [GPRS] NS: Show statistics on VTY only if requested --- openbsc/src/gprs/gprs_ns_vty.c | 23 +++++++++++++++++++---- 1 file changed, 19 insertions(+), 4 deletions(-) diff --git a/openbsc/src/gprs/gprs_ns_vty.c b/openbsc/src/gprs/gprs_ns_vty.c index 6e98e44d..08b0076c 100644 --- a/openbsc/src/gprs/gprs_ns_vty.c +++ b/openbsc/src/gprs/gprs_ns_vty.c @@ -104,10 +104,8 @@ DEFUN(cfg_ns, cfg_ns_cmd, return CMD_SUCCESS; } -DEFUN(show_ns, show_ns_cmd, "show ns", - SHOW_STR "Display information about the NS protocol") +static void dump_ns(struct vty *vty, struct gprs_ns_inst *nsi, int stats) { - struct gprs_ns_inst *nsi = vty_nsi; struct gprs_nsvc *nsvc; llist_for_each_entry(nsvc, &nsi->gprs_nsvcs, list) { @@ -121,12 +119,28 @@ DEFUN(show_ns, show_ns_cmd, "show ns", inet_ntoa(nsvc->ip.bts_addr.sin_addr), ntohs(nsvc->ip.bts_addr.sin_port)); vty_out(vty, "%s", VTY_NEWLINE); - vty_out_rate_ctr_group(vty, " ", nsvc->ctrg); + if (stats) + vty_out_rate_ctr_group(vty, " ", nsvc->ctrg); } +} +DEFUN(show_ns, show_ns_cmd, "show ns", + SHOW_STR "Display information about the NS protocol") +{ + struct gprs_ns_inst *nsi = vty_nsi; + dump_ns(vty, nsi, 0); return CMD_SUCCESS; } +DEFUN(show_ns_stats, show_ns_stats_cmd, "show ns stats", + SHOW_STR + "Display information about the NS protocol\n" + "Include statistics\n") +{ + struct gprs_ns_inst *nsi = vty_nsi; + dump_ns(vty, nsi, 1); + return CMD_SUCCESS; +} #define NSE_CMD_STR "NS Entity\n" "NS Entity ID (NSEI)\n" @@ -260,6 +274,7 @@ int gprs_ns_vty_init(struct gprs_ns_inst *nsi) vty_nsi = nsi; install_element_ve(&show_ns_cmd); + install_element_ve(&show_ns_stats_cmd); install_element(CONFIG_NODE, &cfg_ns_cmd); install_node(&ns_node, config_write_ns); -- cgit v1.2.3