diff options
-rw-r--r-- | pimd/pim_ifchannel.c | 9 | ||||
-rw-r--r-- | pimd/pim_macro.c | 2 | ||||
-rw-r--r-- | pimd/pim_upstream.c | 1 |
3 files changed, 8 insertions, 4 deletions
diff --git a/pimd/pim_ifchannel.c b/pimd/pim_ifchannel.c index b83f0072b..85bd178d9 100644 --- a/pimd/pim_ifchannel.c +++ b/pimd/pim_ifchannel.c @@ -169,6 +169,13 @@ void pim_ifchannel_ifjoin_switch(const char *caller, { enum pim_ifjoin_state old_state = ch->ifjoin_state; + if (PIM_DEBUG_PIM_EVENTS) + zlog_debug ("PIM_IFCHANNEL: %s is switching from %s to %s", + pim_str_sg_dump (&ch->sg), + pim_ifchannel_ifjoin_name (ch->ifjoin_state), + pim_ifchannel_ifjoin_name (new_state)); + + if (old_state == new_state) { if (PIM_DEBUG_PIM_EVENTS) { zlog_debug("%s calledby %s: non-transition on state %d (%s)", @@ -178,8 +185,6 @@ void pim_ifchannel_ifjoin_switch(const char *caller, return; } - zassert(old_state != new_state); - ch->ifjoin_state = new_state; /* Transition to/from NOINFO ? */ diff --git a/pimd/pim_macro.c b/pimd/pim_macro.c index 62decfd5f..4bcb62a90 100644 --- a/pimd/pim_macro.c +++ b/pimd/pim_macro.c @@ -337,7 +337,7 @@ static int pim_macro_chisin_inherited_olist(const struct pim_ifchannel *ch) */ int pim_macro_chisin_oiflist(const struct pim_ifchannel *ch) { - if (ch->upstream->join_state != PIM_UPSTREAM_JOINED) { + if (ch->upstream->join_state == PIM_UPSTREAM_NOTJOINED) { /* oiflist is NULL */ return 0; /* false */ } diff --git a/pimd/pim_upstream.c b/pimd/pim_upstream.c index abc3f53c5..4563b6ecb 100644 --- a/pimd/pim_upstream.c +++ b/pimd/pim_upstream.c @@ -1029,7 +1029,6 @@ pim_upstream_inherited_olist (struct pim_upstream *up) int output_intf = 0; pim_ifp = up->rpf.source_nexthop.interface->info; - zlog_debug ("Channel Oil%s: %p", pim_str_sg_dump (&up->sg), up->channel_oil); if (!up->channel_oil) up->channel_oil = pim_channel_oil_add (&up->sg, pim_ifp->mroute_vif_index); |