]> git.puffer.fish Git - matthieu/frr.git/commitdiff
bgpd: Make usage of idx consistent
authorDonald Sharp <sharpd@cumulusnetworks.com>
Fri, 27 Jan 2017 13:12:53 +0000 (08:12 -0500)
committerDonald Sharp <sharpd@cumulusnetworks.com>
Fri, 27 Jan 2017 13:12:53 +0000 (08:12 -0500)
Convert the idx to &idx to make our api more consistent

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
bgpd/bgp_route.c
bgpd/bgp_vty.c
bgpd/bgp_vty.h

index 573fc7665520923b5840328ba453981ebeabd2b3..0225a0bbeffe8e3708765aac1eff4c735cb964d0 100644 (file)
@@ -8058,7 +8058,7 @@ DEFUN (show_ip_bgp,
   struct bgp *bgp = NULL;
   int idx = 0;
 
-  idx = bgp_vty_find_and_parse_afi_safi_vrf (vty, argv, argc, idx, &afi, &safi, &vrf);
+  bgp_vty_find_and_parse_afi_safi_vrf (vty, argv, argc, &idx, &afi, &safi, &vrf);
   if (!idx)
     return CMD_WARNING;
 
@@ -8067,6 +8067,7 @@ DEFUN (show_ip_bgp,
 
   if (vrf != VRF_ALL)
     {
+      vty_out(vty, "VRF-id: %d", vrf);
       bgp = bgp_lookup_by_vrf_id (vrf);
       if (bgp == NULL)
         {
@@ -8165,7 +8166,7 @@ DEFUN (show_ip_bgp_route,
 
   int idx = 0;
 
-  idx = bgp_vty_find_and_parse_afi_safi_vrf (vty, argv, argc, idx, &afi, &safi, &vrf);
+  bgp_vty_find_and_parse_afi_safi_vrf (vty, argv, argc, &idx, &afi, &safi, &vrf);
   if (!idx)
     return CMD_WARNING;
 
@@ -8235,7 +8236,7 @@ DEFUN (show_ip_bgp_regexp,
   safi_t safi = SAFI_UNICAST;
 
   int idx = 0;
-  idx = bgp_vty_find_and_parse_afi_safi_vrf (vty, argv, argc, idx, &afi, &safi, &vrf);
+  bgp_vty_find_and_parse_afi_safi_vrf (vty, argv, argc, &idx, &afi, &safi, &vrf);
   if (!idx)
     return CMD_WARNING;
 
@@ -8269,7 +8270,7 @@ DEFUN (show_ip_bgp_instance_all,
   safi_t safi = SAFI_UNICAST;
 
   int idx = 0;
-  idx = bgp_vty_find_and_parse_afi_safi_vrf (vty, argv, argc, idx, &afi, &safi, &vrf);
+  bgp_vty_find_and_parse_afi_safi_vrf (vty, argv, argc, &idx, &afi, &safi, &vrf);
   if (!idx)
     return CMD_WARNING;
 
@@ -8960,7 +8961,7 @@ DEFUN (show_ip_bgp_instance_neighbor_prefix_counts,
   int idx = 0;
   struct bgp *bgp = NULL;
 
-  idx = bgp_vty_find_and_parse_afi_safi_vrf (vty, argv, argc, idx, &afi, &safi, &vrf);
+  bgp_vty_find_and_parse_afi_safi_vrf (vty, argv, argc, &idx, &afi, &safi, &vrf);
   if (!idx)
     return CMD_WARNING;
 
@@ -9324,7 +9325,7 @@ DEFUN (show_ip_bgp_instance_neighbor_advertised_route,
 
   int idx = 0;
 
-  idx = bgp_vty_find_and_parse_afi_safi_vrf (vty, argv, argc, idx, &afi, &safi, &vrf);
+  bgp_vty_find_and_parse_afi_safi_vrf (vty, argv, argc, &idx, &afi, &safi, &vrf);
   if (!idx)
     return CMD_WARNING;
 
@@ -9512,7 +9513,7 @@ DEFUN (show_ip_bgp_neighbor_routes,
 
   int idx = 0;
 
-  idx = bgp_vty_find_and_parse_afi_safi_vrf (vty, argv, argc, idx, &afi, &safi, &vrf);
+  bgp_vty_find_and_parse_afi_safi_vrf (vty, argv, argc, &idx, &afi, &safi, &vrf);
   if (!idx)
     return CMD_WARNING;
 
index 208dd54460092c9e5287b1ea654340126f1f4997..7462f29e312c44295d0d7d602a3f598ac56deb59 100644 (file)
@@ -232,22 +232,22 @@ argv_find_and_parse_safi (struct cmd_token **argv, int argc, int *index, safi_t
  * it found the last token.
  */
 int
-bgp_vty_find_and_parse_afi_safi_vrf (struct vty *vty, struct cmd_token **argv, int argc, int idx,
+bgp_vty_find_and_parse_afi_safi_vrf (struct vty *vty, struct cmd_token **argv, int argc, int *idx,
                                      afi_t *afi, safi_t *safi, vrf_id_t *vrf)
 {
   char *vrf_name = NULL;
 
-  if (argv_find (argv, argc, "ip", &idx))
+  if (argv_find (argv, argc, "ip", idx))
       *afi = AFI_IP;
 
-  if (argv_find (argv, argc, "view", &idx) || argv_find (argv, argc, "vrf", &idx))
+  if (argv_find (argv, argc, "view", idx) || argv_find (argv, argc, "vrf", idx))
     {
-      vrf_name = argv[idx + 1]->arg;
-      idx += 2;
+      vrf_name = argv[*idx + 1]->arg;
+      *idx += 2;
     }
 
-  if (argv_find_and_parse_afi (argv, argc, &idx, afi))
-    argv_find_and_parse_safi (argv, argc, &idx, safi);
+  if (argv_find_and_parse_afi (argv, argc, idx, afi))
+    argv_find_and_parse_safi (argv, argc, idx, safi);
 
   if (vrf_name)
     {
@@ -260,9 +260,12 @@ bgp_vty_find_and_parse_afi_safi_vrf (struct vty *vty, struct cmd_token **argv, i
   if (*vrf == VRF_UNKNOWN)
     {
       vty_out (vty, "View/Vrf specified is unknown: %s", vrf_name);
+      *idx = 0;
       return 0;
     }
-  return idx + 1;
+
+  *idx += 1;
+  return *idx;
 }
 
 static int
index cfc4f6cdfbcfa282a687c9bc91d5ebc07f275105..13e67d112ee1beb73d1c47d5b7de05be9260029e 100644 (file)
@@ -64,6 +64,6 @@ extern int
 argv_find_and_parse_safi(struct cmd_token **argv, int argc, int *index, safi_t *safi);
 
 extern int
-bgp_vty_find_and_parse_afi_safi_vrf (struct vty *vty, struct cmd_token **argv, int argc, int idx,
+bgp_vty_find_and_parse_afi_safi_vrf (struct vty *vty, struct cmd_token **argv, int argc, int *idx,
                                      afi_t *afi, safi_t *safi, vrf_id_t *vrf);
 #endif /* _QUAGGA_BGP_VTY_H */