Browse Source

[bgpd] Add 'show bgp views' command

* bgp_vty.c: (show_bgp_views_cmd) new command to list all defined
  views.
  (with small edits by Paul Jakma)

Signed-off-by: Paul Jakma <paul@quagga.net>
Michael Lambert 13 years ago
parent
commit
e0081f70ed
1 changed files with 31 additions and 0 deletions
  1. 31 0
      bgpd/bgp_vty.c

+ 31 - 0
bgpd/bgp_vty.c

@@ -6509,6 +6509,32 @@ ALIAS (clear_ip_bgp_peer_rsclient,
        "BGP IPv6 neighbor to clear\n"
        "Soft reconfig for rsclient RIB\n")
 
+DEFUN (show_bgp_views,
+       show_bgp_views_cmd,
+       "show bgp views",
+       SHOW_STR
+       BGP_STR
+       "Show the defined BGP views\n")
+{
+  struct list *inst = bm->bgp;
+  struct listnode *node;
+  struct bgp *bgp;
+
+  if (!bgp_option_check (BGP_OPT_MULTIPLE_INSTANCE))
+    {
+      vty_out (vty, "Multiple BGP views are not defined%s", VTY_NEWLINE);
+      return CMD_WARNING;
+    }
+  
+  vty_out (vty, "Defined BGP views:%s", VTY_NEWLINE);
+  for (ALL_LIST_ELEMENTS_RO(inst, node, bgp))
+    vty_out (vty, "\t%s (AS%u)%s", 
+             bgp->name ? bgp->name : "(null)",
+             bgp->as, VTY_NEWLINE);
+  
+  return CMD_SUCCESS;
+}
+
 DEFUN (show_bgp_memory, 
        show_bgp_memory_cmd,
        "show bgp memory",
@@ -9875,6 +9901,11 @@ bgp_vty_init (void)
   install_element (RESTRICTED_NODE, &show_bgp_memory_cmd);
   install_element (ENABLE_NODE, &show_bgp_memory_cmd);
   
+  /* "show bgp views" commands. */
+  install_element (VIEW_NODE, &show_bgp_views_cmd);
+  install_element (RESTRICTED_NODE, &show_bgp_views_cmd);
+  install_element (ENABLE_NODE, &show_bgp_views_cmd);
+  
   /* Community-list. */
   community_list_vty ();
 }