summaryrefslogtreecommitdiffstats
path: root/pimd/pim_oil.c
diff options
context:
space:
mode:
authorAnuradha Karuppiah <anuradhak@cumulusnetworks.com>2019-10-14 21:41:33 +0200
committerDonald Sharp <sharpd@cumulusnetworks.com>2020-03-06 22:12:25 +0100
commitb900ad16ee2571d33c29a9f8541a78ce1681cb5a (patch)
treeeffdbe4ff77d342205a0d1bfd6035074db0535d4 /pimd/pim_oil.c
parentlib, pimd, zebra: Provide some insurance against reading bad stream data (diff)
downloadfrr-b900ad16ee2571d33c29a9f8541a78ce1681cb5a.tar.xz
frr-b900ad16ee2571d33c29a9f8541a78ce1681cb5a.zip
pimd: logs to help debug leaked channel OIF problems
Additional protocols were being set on the OIF proto-mask without logs. Added logs in that area. Also added start and end logs to ifchannel_delete to help identify state machine changes that play out as a part of this event handling. Ticket: CM-26732 Signed-off-by: Anuradha Karuppiah <anuradhak@cumulusnetworks.com>
Diffstat (limited to 'pimd/pim_oil.c')
-rw-r--r--pimd/pim_oil.c17
1 files changed, 17 insertions, 0 deletions
diff --git a/pimd/pim_oil.c b/pimd/pim_oil.c
index b165bcbee..21febcc96 100644
--- a/pimd/pim_oil.c
+++ b/pimd/pim_oil.c
@@ -493,6 +493,23 @@ int pim_channel_add_oif(struct channel_oil *channel_oil, struct interface *oif,
}
}
+ if (PIM_DEBUG_MROUTE) {
+ char group_str[INET_ADDRSTRLEN];
+ char source_str[INET_ADDRSTRLEN];
+ pim_inet4_dump("<group?>",
+ channel_oil->oil.mfcc_mcastgrp,
+ group_str, sizeof(group_str));
+ pim_inet4_dump("<source?>",
+ channel_oil->oil.mfcc_origin, source_str,
+ sizeof(source_str));
+ zlog_debug(
+ "%s(%s): (S,G)=(%s,%s): proto_mask=%u OIF=%s vif_index=%d added to 0x%x",
+ __func__, caller, source_str, group_str,
+ proto_mask, oif->name,
+ pim_ifp->mroute_vif_index,
+ channel_oil
+ ->oif_flags[pim_ifp->mroute_vif_index]);
+ }
return 0;
}