summaryrefslogtreecommitdiff
path: root/pimd/pim_tib.c
diff options
context:
space:
mode:
authorDavid Lamparter <equinox@opensourcerouting.org>2022-07-07 15:36:57 +0200
committerGitHub <noreply@github.com>2022-07-07 15:36:57 +0200
commit3eade02f13ffb5de9cfb164107ba493f40b90590 (patch)
treed6c3269e5a7baaef2aae1e0a548da300291d9a39 /pimd/pim_tib.c
parent967e4a178747dd5cc4fe5435d96f80b0e2a2f643 (diff)
parente6e530063649d1197d054c8b87580f5a64407916 (diff)
Merge pull request #10715 from patrasar/pim_rpf_prefix_to_pimaddr
pim6d: modify pim_rpf from struct prefix to pim_addr
Diffstat (limited to 'pimd/pim_tib.c')
-rw-r--r--pimd/pim_tib.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/pimd/pim_tib.c b/pimd/pim_tib.c
index a69177a6e5..3b73c430b0 100644
--- a/pimd/pim_tib.c
+++ b/pimd/pim_tib.c
@@ -34,7 +34,7 @@ tib_sg_oil_setup(struct pim_instance *pim, pim_sgaddr sg, struct interface *oif)
struct pim_interface *pim_oif = oif->info;
int input_iface_vif_index = 0;
pim_addr vif_source;
- struct prefix src, grp;
+ struct prefix grp;
struct pim_nexthop nexthop;
struct pim_upstream *up = NULL;
@@ -43,20 +43,19 @@ tib_sg_oil_setup(struct pim_instance *pim, pim_sgaddr sg, struct interface *oif)
return pim_channel_oil_add(pim, &sg, __func__);
}
- pim_addr_to_prefix(&src, vif_source); // RP or Src addr
pim_addr_to_prefix(&grp, sg.grp);
up = pim_upstream_find(pim, &sg);
if (up) {
memcpy(&nexthop, &up->rpf.source_nexthop,
sizeof(struct pim_nexthop));
- pim_ecmp_nexthop_lookup(pim, &nexthop, &src, &grp, 0);
+ pim_ecmp_nexthop_lookup(pim, &nexthop, vif_source, &grp, 0);
if (nexthop.interface)
input_iface_vif_index = pim_if_find_vifindex_by_ifindex(
pim, nexthop.interface->ifindex);
} else
input_iface_vif_index =
- pim_ecmp_fib_lookup_if_vif_index(pim, &src, &grp);
+ pim_ecmp_fib_lookup_if_vif_index(pim, vif_source, &grp);
if (PIM_DEBUG_ZEBRA)
zlog_debug("%s: NHT %pSG vif_source %pPAs vif_index:%d",