summaryrefslogtreecommitdiffstats
path: root/pimd/pim_ifchannel.h
diff options
context:
space:
mode:
authorDonald Sharp <sharpd@cumulusnetworks.com>2016-11-08 14:00:02 +0100
committerDonald Sharp <sharpd@cumulusnetworks.com>2016-12-22 02:26:14 +0100
commit637a61fa2b556f38f861e2d3fd2ba4110ddaef99 (patch)
treeeea491e0808af1bf2bd99dbbda688548e729dd2e /pimd/pim_ifchannel.h
parentpimd: 'show ip pim join json' add by src not grp (diff)
downloadfrr-637a61fa2b556f38f861e2d3fd2ba4110ddaef99.tar.xz
frr-637a61fa2b556f38f861e2d3fd2ba4110ddaef99.zip
pimd: Add ability to know if ifchannel is (S,G,rpt)
Add ability to track (S,G,rpt) ifchannel prunes. Add ability to display this data in json. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
Diffstat (limited to 'pimd/pim_ifchannel.h')
-rw-r--r--pimd/pim_ifchannel.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/pimd/pim_ifchannel.h b/pimd/pim_ifchannel.h
index 7791e6d95..908d27fd6 100644
--- a/pimd/pim_ifchannel.h
+++ b/pimd/pim_ifchannel.h
@@ -72,6 +72,14 @@ struct pim_assert_metric {
#define PIM_IF_FLAG_UNSET_ASSERT_TRACKING_DESIRED(flags) ((flags) &= ~PIM_IF_FLAG_MASK_ASSERT_TRACKING_DESIRED)
/*
+ * Flat to tell us if the ifchannel is (S,G,rpt)
+ */
+#define PIM_IF_FLAG_MASK_S_G_RPT (1 << 2)
+#define PIM_IF_FLAG_TEST_S_G_RPT(flags) ((flags) & PIM_IF_FLAG_MASK_S_G_RPT)
+#define PIM_IF_FLAG_SET_S_G_RPT(flags) ((flags) |= PIM_IF_FLAG_MASK_S_G_RPT)
+#define PIM_IF_FLAG_UNSET_S_G_RPT(flags) ((flags) &= ~PIM_IF_FLAG_MASK_S_G_RPT)
+
+/*
Per-interface (S,G) state
*/
struct pim_ifchannel {