summaryrefslogtreecommitdiff
path: root/pimd/pim_rp.c
diff options
context:
space:
mode:
Diffstat (limited to 'pimd/pim_rp.c')
-rw-r--r--pimd/pim_rp.c26
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");