summaryrefslogtreecommitdiffstats
path: root/pimd/pim_upstream.c
diff options
context:
space:
mode:
authorDonald Sharp <donaldsharp72@gmail.com>2022-02-26 14:03:06 +0100
committerGitHub <noreply@github.com>2022-02-26 14:03:06 +0100
commit3bf65aa1ae5fb69bf97c6dc54775a25c13cc4c59 (patch)
tree4ea94e01cadb3d0209ad8abdd7fd584b26c55918 /pimd/pim_upstream.c
parentMerge pull request #10658 from proelbtn/fix/srv6-l3vpn-transposition (diff)
parentpim6d: remove `PIM_V6_TEMP_BREAK` (diff)
downloadfrr-3bf65aa1ae5fb69bf97c6dc54775a25c13cc4c59.tar.xz
frr-3bf65aa1ae5fb69bf97c6dc54775a25c13cc4c59.zip
Merge pull request #10400 from opensourcerouting/pim6-compilefix
pim6d: get running with ipv6 types throughout
Diffstat (limited to 'pimd/pim_upstream.c')
-rw-r--r--pimd/pim_upstream.c20
1 files changed, 10 insertions, 10 deletions
diff --git a/pimd/pim_upstream.c b/pimd/pim_upstream.c
index ae6282316..7d835996f 100644
--- a/pimd/pim_upstream.c
+++ b/pimd/pim_upstream.c
@@ -1261,7 +1261,7 @@ void pim_upstream_update_join_desired(struct pim_instance *pim,
it so that it expires after t_override seconds.
*/
void pim_upstream_rpf_genid_changed(struct pim_instance *pim,
- struct in_addr neigh_addr)
+ pim_addr neigh_addr)
{
struct pim_upstream *up;
@@ -1269,24 +1269,24 @@ void pim_upstream_rpf_genid_changed(struct pim_instance *pim,
* Scan all (S,G) upstreams searching for RPF'(S,G)=neigh_addr
*/
frr_each (rb_pim_upstream, &pim->upstream_head, up) {
- if (PIM_DEBUG_PIM_TRACE) {
- char rpf_addr_str[PREFIX_STRLEN];
- pim_addr_dump("<rpf?>", &up->rpf.rpf_addr, rpf_addr_str,
- sizeof(rpf_addr_str));
+ pim_addr rpf_addr;
+
+ rpf_addr = pim_addr_from_prefix(&up->rpf.rpf_addr);
+
+ if (PIM_DEBUG_PIM_TRACE)
zlog_debug(
- "%s: matching neigh=%pI4 against upstream (S,G)=%s[%s] joined=%d rpf_addr=%s",
+ "%s: matching neigh=%pPA against upstream (S,G)=%s[%s] joined=%d rpf_addr=%pPA",
__func__, &neigh_addr, up->sg_str,
pim->vrf->name,
up->join_state == PIM_UPSTREAM_JOINED,
- rpf_addr_str);
- }
+ &rpf_addr);
/* consider only (S,G) upstream in Joined state */
if (up->join_state != PIM_UPSTREAM_JOINED)
continue;
/* match RPF'(S,G)=neigh_addr */
- if (up->rpf.rpf_addr.u.prefix4.s_addr != neigh_addr.s_addr)
+ if (pim_addr_cmp(rpf_addr, neigh_addr))
continue;
pim_upstream_join_timer_decrease_to_t_override(
@@ -1992,7 +1992,7 @@ static bool pim_upstream_kat_start_ok(struct pim_upstream *up)
return false;
pim_ifp = ifp->info;
- if (pim_ifp->mroute_vif_index != c_oil->oil.mfcc_parent)
+ if (pim_ifp->mroute_vif_index != *oil_parent(c_oil))
return false;
if (pim_if_connected_to_source(up->rpf.source_nexthop.interface,