summaryrefslogtreecommitdiffstats
path: root/ospf6d/ospf6_route.c
diff options
context:
space:
mode:
authorKaushik <kaushik@niralnetworks.com>2020-09-01 10:31:49 +0200
committerKaushik <kaushik@niralnetworks.com>2020-09-01 12:02:46 +0200
commitc5d28568c6b71e16fefb3a409159e8fc9742e3f0 (patch)
tree9aa9c4b0944e5f6ed9740c184ca81141edf28f36 /ospf6d/ospf6_route.c
parentMerge pull request #7025 from opensourcerouting/silence-cli-warning (diff)
downloadfrr-c5d28568c6b71e16fefb3a409159e8fc9742e3f0.tar.xz
frr-c5d28568c6b71e16fefb3a409159e8fc9742e3f0.zip
ospf6d : Preparing for ospf6d VRF support.
1. Removed the VRF_DEFAULT dependency from ospf6d. 2. The dependency on show command still exist will be fixed when the ospf6 master is available. Co-authored-by: Harios <hari@niralnetworks.com> Signed-off-by: Kaushik <kaushik@niralnetworks.com>
Diffstat (limited to 'ospf6d/ospf6_route.c')
-rw-r--r--ospf6d/ospf6_route.c18
1 files changed, 14 insertions, 4 deletions
diff --git a/ospf6d/ospf6_route.c b/ospf6d/ospf6_route.c
index 723746c47..a443e4c3b 100644
--- a/ospf6d/ospf6_route.c
+++ b/ospf6d/ospf6_route.c
@@ -307,14 +307,14 @@ void ospf6_route_zebra_copy_nexthops(struct ospf6_route *route,
inet_ntop(AF_INET6, &nh->address, buf,
sizeof(buf));
ifname = ifindex2ifname(nh->ifindex,
- VRF_DEFAULT);
+ ospf6->vrf_id);
zlog_debug(" nexthop: %s%%%.*s(%d)", buf,
IFNAMSIZ, ifname, nh->ifindex);
}
if (i >= entries)
return;
- nexthops[i].vrf_id = VRF_DEFAULT;
+ nexthops[i].vrf_id = ospf6->vrf_id;
nexthops[i].ifindex = nh->ifindex;
if (!IN6_IS_ADDR_UNSPECIFIED(&nh->address)) {
nexthops[i].gate.ipv6 = nh->address;
@@ -1042,6 +1042,11 @@ void ospf6_route_show(struct vty *vty, struct ospf6_route *route)
struct listnode *node;
struct ospf6_nexthop *nh;
+ if (ospf6 == NULL) {
+ vty_out(vty, "OSPFv3 is not running\n");
+ return;
+ }
+
monotime(&now);
timersub(&now, &route->changed, &res);
timerstring(&res, duration, sizeof(duration));
@@ -1060,7 +1065,7 @@ void ospf6_route_show(struct vty *vty, struct ospf6_route *route)
for (ALL_LIST_ELEMENTS_RO(route->nh_list, node, nh)) {
/* nexthop */
inet_ntop(AF_INET6, &nh->address, nexthop, sizeof(nexthop));
- ifname = ifindex2ifname(nh->ifindex, VRF_DEFAULT);
+ ifname = ifindex2ifname(nh->ifindex, ospf6->vrf_id);
if (!i) {
vty_out(vty, "%c%1s %2s %-30s %-25s %6.*s %s\n",
@@ -1086,6 +1091,11 @@ void ospf6_route_show_detail(struct vty *vty, struct ospf6_route *route)
struct listnode *node;
struct ospf6_nexthop *nh;
+ if (ospf6 == NULL) {
+ vty_out(vty, "OSPFv3 is not running\n");
+ return;
+ }
+
monotime(&now);
/* destination */
@@ -1160,7 +1170,7 @@ void ospf6_route_show_detail(struct vty *vty, struct ospf6_route *route)
for (ALL_LIST_ELEMENTS_RO(route->nh_list, node, nh)) {
/* nexthop */
inet_ntop(AF_INET6, &nh->address, nexthop, sizeof(nexthop));
- ifname = ifindex2ifname(nh->ifindex, VRF_DEFAULT);
+ ifname = ifindex2ifname(nh->ifindex, ospf6->vrf_id);
vty_out(vty, " %s %.*s\n", nexthop, IFNAMSIZ, ifname);
}
vty_out(vty, "\n");