summaryrefslogtreecommitdiff
path: root/bgpd/bgp_zebra.c
diff options
context:
space:
mode:
Diffstat (limited to 'bgpd/bgp_zebra.c')
-rw-r--r--bgpd/bgp_zebra.c13
1 files changed, 8 insertions, 5 deletions
diff --git a/bgpd/bgp_zebra.c b/bgpd/bgp_zebra.c
index 5e9fc57f59..252eb88143 100644
--- a/bgpd/bgp_zebra.c
+++ b/bgpd/bgp_zebra.c
@@ -787,7 +787,7 @@ bool bgp_zebra_nexthop_set(union sockunion *local, union sockunion *remote,
nexthop->v4 = local->sin.sin_addr;
if (peer->update_if)
ifp = if_lookup_by_name(peer->update_if,
- peer->bgp->vrf_id);
+ vrf_lookup_by_id(peer->bgp->vrf_id));
else
ifp = if_lookup_by_ipv4_exact(&local->sin.sin_addr,
peer->bgp->vrf_id);
@@ -798,10 +798,11 @@ bool bgp_zebra_nexthop_set(union sockunion *local, union sockunion *remote,
ifp = if_lookup_by_name(peer->conf_if
? peer->conf_if
: peer->ifname,
- peer->bgp->vrf_id);
+ vrf_lookup_by_id(
+ peer->bgp->vrf_id));
} else if (peer->update_if)
ifp = if_lookup_by_name(peer->update_if,
- peer->bgp->vrf_id);
+ vrf_lookup_by_id(peer->bgp->vrf_id));
else
ifp = if_lookup_by_ipv6_exact(&local->sin6.sin6_addr,
local->sin6.sin6_scope_id,
@@ -2882,7 +2883,8 @@ static void bgp_encode_pbr_interface_list(struct bgp *bgp, struct stream *s)
head = &(bgp_pbr_cfg->ifaces_by_name_ipv4);
RB_FOREACH (pbr_if, bgp_pbr_interface_head, head) {
- ifp = if_lookup_by_name(pbr_if->name, bgp->vrf_id);
+ ifp = if_lookup_by_name(pbr_if->name,
+ vrf_lookup_by_id(bgp->vrf_id));
if (ifp)
stream_putl(s, ifp->ifindex);
}
@@ -2900,7 +2902,8 @@ static int bgp_pbr_get_ifnumber(struct bgp *bgp)
head = &(bgp_pbr_cfg->ifaces_by_name_ipv4);
RB_FOREACH (pbr_if, bgp_pbr_interface_head, head) {
- if (if_lookup_by_name(pbr_if->name, bgp->vrf_id))
+ if (if_lookup_by_name(pbr_if->name,
+ vrf_lookup_by_id(bgp->vrf_id)))
cnt++;
}
return cnt;