summaryrefslogtreecommitdiff
path: root/zebra/zebra_vty.c
diff options
context:
space:
mode:
Diffstat (limited to 'zebra/zebra_vty.c')
-rw-r--r--zebra/zebra_vty.c32
1 files changed, 20 insertions, 12 deletions
diff --git a/zebra/zebra_vty.c b/zebra/zebra_vty.c
index f0be862221..62869b7eec 100644
--- a/zebra/zebra_vty.c
+++ b/zebra/zebra_vty.c
@@ -2013,17 +2013,21 @@ DEFPY(ipv6_route_address_interface,
struct zebra_vrf *zvrf;
struct zebra_vrf *nh_zvrf;
- nh_zvrf = zebra_vrf_lookup_by_name(nexthop_vrf);
- if (!nh_zvrf) {
- vty_out(vty, "%% nexthop vrf %s is not defined\n",
- nexthop_vrf);
+ zvrf = zebra_vrf_lookup_by_name(vrf);
+ if (!zvrf) {
+ vty_out(vty, "%% vrf %s is not defined\n",
+ vrf);
return CMD_WARNING_CONFIG_FAILED;
}
- zvrf = zebra_vrf_lookup_by_name(vrf);
+ if (nexthop_vrf)
+ nh_zvrf = zebra_vrf_lookup_by_name(nexthop_vrf);
+ else
+ nh_zvrf = zvrf;
+
if (!nh_zvrf) {
vty_out(vty, "%% nexthop vrf %s is not defined\n",
- vrf);
+ nexthop_vrf);
return CMD_WARNING_CONFIG_FAILED;
}
@@ -2104,17 +2108,21 @@ DEFPY(ipv6_route,
struct zebra_vrf *zvrf;
struct zebra_vrf *nh_zvrf;
- nh_zvrf = zebra_vrf_lookup_by_name(nexthop_vrf);
- if (!nh_zvrf) {
- vty_out(vty, "%% nexthop vrf %s is not defined\n",
- nexthop_vrf);
+ zvrf = zebra_vrf_lookup_by_name(vrf);
+ if (!zvrf) {
+ vty_out(vty, "%% vrf %s is not defined\n",
+ vrf);
return CMD_WARNING_CONFIG_FAILED;
}
- zvrf = zebra_vrf_lookup_by_name(vrf);
+ if (nexthop_vrf)
+ nh_zvrf = zebra_vrf_lookup_by_name(nexthop_vrf);
+ else
+ nh_zvrf = zvrf;
+
if (!nh_zvrf) {
vty_out(vty, "%% nexthop vrf %s is not defined\n",
- vrf);
+ nexthop_vrf);
return CMD_WARNING_CONFIG_FAILED;
}