This change re-adds an additional check bsr rpf that was removed
in
2c6a32f9be3c687fe5c52d055f21912da8364ec6.
Without that check, bsr messages is resent (causing a loop) if we
have more than one pim neighbor on a link.
Signed-off-by: Jafar Al-Gharaibeh <jafar@atcorp.com>
if (!nbr)
continue;
- return znh->ifindex == src_ifp->ifindex;
+ return znh->ifindex == src_ifp->ifindex &&
+ (!pim_addr_cmp(znh->nexthop_addr, src_ip));
}
return false;
}
return true;
/* MRIB (IGP) may be pointing at a router where PIM is down */
-
nbr = pim_neighbor_find(ifp, nhaddr, true);
-
if (!nbr)
continue;
- return nh->ifindex == src_ifp->ifindex;
+ return nh->ifindex == src_ifp->ifindex &&
+ (!pim_addr_cmp(nhaddr, src_ip));
}
return false;
}