summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--pimd/pim_ifchannel.c9
-rw-r--r--pimd/pim_macro.c2
-rw-r--r--pimd/pim_upstream.c1
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);