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;
if (vrf != VRF_ALL)
{
+ vty_out(vty, "VRF-id: %d", vrf);
bgp = bgp_lookup_by_vrf_id (vrf);
if (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;
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;
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;
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;
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;
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;
* 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)
{
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
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 */