diff options
Diffstat (limited to 'pimd/pim_rp.c')
| -rw-r--r-- | pimd/pim_rp.c | 26 |
1 files changed, 15 insertions, 11 deletions
diff --git a/pimd/pim_rp.c b/pimd/pim_rp.c index 5542db27c9..39493b189b 100644 --- a/pimd/pim_rp.c +++ b/pimd/pim_rp.c @@ -131,7 +131,7 @@ void pim_rp_init(struct pim_instance *pim) rn = route_node_get(pim->rp_table, &rp_info->group); rn->info = rp_info; - if (PIM_DEBUG_TRACE) + if (PIM_DEBUG_PIM_TRACE) zlog_debug( "Allocated: %p for rp_info: %p(224.0.0.0/4) Lock: %d", rn, rp_info, rn->lock); @@ -245,7 +245,7 @@ struct rp_info *pim_rp_find_match_group(struct pim_instance *pim, } rp_info = rn->info; - if (PIM_DEBUG_TRACE) { + if (PIM_DEBUG_PIM_TRACE) { char buf[PREFIX_STRLEN]; route_unlock_node(rn); @@ -348,7 +348,7 @@ void pim_upstream_update(struct pim_instance *pim, struct pim_upstream *up) pim_rp_set_upstream_addr(pim, &new_upstream_addr, up->sg.src, up->sg.grp); - if (PIM_DEBUG_TRACE) + if (PIM_DEBUG_PIM_TRACE) zlog_debug("%s: pim upstream update for old upstream %s", __PRETTY_FUNCTION__, inet_ntoa(old_upstream_addr)); @@ -366,7 +366,7 @@ void pim_upstream_update(struct pim_instance *pim, struct pim_upstream *up) nht_p.family = AF_INET; nht_p.prefixlen = IPV4_MAX_BITLEN; nht_p.u.prefix4 = old_upstream_addr; - if (PIM_DEBUG_TRACE) { + if (PIM_DEBUG_PIM_TRACE) { char buf[PREFIX2STR_BUFFER]; prefix2str(&nht_p, buf, sizeof(buf)); @@ -457,6 +457,10 @@ int pim_rp_new(struct pim_instance *pim, struct in_addr rp_addr, struct pim_upstream *up; struct listnode *upnode; + if (rp_addr.s_addr == INADDR_ANY || + rp_addr.s_addr == INADDR_NONE) + return PIM_RP_BAD_ADDRESS; + rp_info = XCALLOC(MTYPE_PIM_RP, sizeof(*rp_info)); rp_info->rp.rpf_addr.family = AF_INET; @@ -646,7 +650,7 @@ int pim_rp_new(struct pim_instance *pim, struct in_addr rp_addr, rn = route_node_get(pim->rp_table, &rp_info->group); rn->info = rp_info; - if (PIM_DEBUG_TRACE) { + if (PIM_DEBUG_PIM_TRACE) { char buf[PREFIX_STRLEN]; zlog_debug("Allocated: %p for rp_info: %p(%s) Lock: %d", rn, @@ -751,7 +755,7 @@ int pim_rp_del(struct pim_instance *pim, struct in_addr rp_addr, was_plist = true; } - if (PIM_DEBUG_TRACE) + if (PIM_DEBUG_PIM_TRACE) zlog_debug("%s: Delete RP %s for the group %s", __PRETTY_FUNCTION__, rp_str, grp_str); @@ -765,7 +769,7 @@ int pim_rp_del(struct pim_instance *pim, struct in_addr rp_addr, if (bsgrp) { bsrp = listnode_head(bsgrp->bsrp_list); if (bsrp) { - if (PIM_DEBUG_TRACE) { + if (PIM_DEBUG_PIM_TRACE) { char bsrp_str[INET_ADDRSTRLEN]; if (!inet_ntop(AF_INET, bsrp, bsrp_str, @@ -780,7 +784,7 @@ int pim_rp_del(struct pim_instance *pim, struct in_addr rp_addr, group, RP_SRC_BSR); } } else { - if (PIM_DEBUG_TRACE) + if (PIM_DEBUG_PIM_TRACE) zlog_debug( "%s: BSM RP not found for the group %s", __PRETTY_FUNCTION__, grp_str); @@ -839,7 +843,7 @@ int pim_rp_del(struct pim_instance *pim, struct in_addr rp_addr, EC_LIB_DEVELOPMENT, "Expected rn->info to be equal to rp_info"); - if (PIM_DEBUG_TRACE) { + if (PIM_DEBUG_PIM_TRACE) { char buf[PREFIX_STRLEN]; zlog_debug( @@ -1261,7 +1265,7 @@ void pim_rp_show_information(struct pim_instance *pim, struct vty *vty, bool uj) json = json_object_new_object(); else vty_out(vty, - "RP address group/prefix-list OIF I am RP Source\n"); + "RP address group/prefix-list OIF I am RP Source\n"); for (ALL_LIST_ELEMENTS_RO(pim->rp_list, node, rp_info)) { if (!pim_rpf_addr_is_inaddr_none(&rp_info->rp)) { char buf[48]; @@ -1338,7 +1342,7 @@ void pim_rp_show_information(struct pim_instance *pim, struct vty *vty, bool uj) vty_out(vty, "%-16s ", "(Unknown)"); if (rp_info->i_am_rp) - vty_out(vty, "yes\n"); + vty_out(vty, "yes"); else vty_out(vty, "no"); |
