struct pim_rpf old;
old.source_nexthop.interface = up->rpf.source_nexthop.interface;
- rpf_result = pim_rpf_update(pim, up, &old, 0);
+ rpf_result = pim_rpf_update(pim, up, &old);
if (rpf_result == PIM_RPF_FAILURE) {
pim_upstream_rpf_clear(pim, up);
return HASHWALK_CONTINUE;
old_rpf.source_nexthop.interface = up->rpf.source_nexthop.interface;
- rpf_result = pim_rpf_update(pim, up, &old_rpf, 1);
+ rpf_result = pim_rpf_update(pim, up, &old_rpf);
if (rpf_result == PIM_RPF_FAILURE)
pim_mroute_del(up->channel_oil, __PRETTY_FUNCTION__);
}
enum pim_rpf_result pim_rpf_update(struct pim_instance *pim,
- struct pim_upstream *up, struct pim_rpf *old,
- uint8_t is_new)
+ struct pim_upstream *up, struct pim_rpf *old)
{
struct pim_rpf *rpf = &up->rpf;
struct pim_rpf saved;
saved.source_nexthop = rpf->source_nexthop;
saved.rpf_addr = rpf->rpf_addr;
- if (is_new && PIM_DEBUG_ZEBRA) {
- char source_str[INET_ADDRSTRLEN];
- pim_inet4_dump("<source?>", up->upstream_addr, source_str,
- sizeof(source_str));
- zlog_debug("%s: NHT Register upstream %s addr %s with Zebra.",
- __PRETTY_FUNCTION__, up->sg_str, source_str);
- }
- /* Register addr with Zebra NHT */
nht_p.family = AF_INET;
nht_p.prefixlen = IPV4_MAX_BITLEN;
nht_p.u.prefix4.s_addr = up->upstream_addr.s_addr;
bool pim_nexthop_lookup(struct pim_instance *pim, struct pim_nexthop *nexthop,
struct in_addr addr, int neighbor_needed);
enum pim_rpf_result pim_rpf_update(struct pim_instance *pim,
- struct pim_upstream *up, struct pim_rpf *old,
- uint8_t is_new);
+ struct pim_upstream *up,
+ struct pim_rpf *old);
void pim_upstream_rpf_clear(struct pim_instance *pim,
struct pim_upstream *up);
int pim_rpf_addr_is_inaddr_none(struct pim_rpf *rpf);
up->channel_oil = pim_channel_oil_add(pim, &up->sg, MAXVIFS);
} else {
- rpf_result = pim_rpf_update(pim, up, NULL, 1);
+ rpf_result = pim_rpf_update(pim, up, NULL);
if (rpf_result == PIM_RPF_FAILURE) {
if (PIM_DEBUG_TRACE)
zlog_debug(
zlog_debug(
"%s: Upstream %s without a path to send join, checking",
__PRETTY_FUNCTION__, up->sg_str);
- pim_rpf_update(pim, up, NULL, 1);
+ pim_rpf_update(pim, up, NULL);
}
}
}
* for nht
*/
if (up)
- pim_rpf_update(vxlan_sg->pim, up, NULL, 1 /* is_new */);
+ pim_rpf_update(vxlan_sg->pim, up, NULL);
}
}