From 66cc32fa0a057c3c036c876bd6326c7b27e9a585 Mon Sep 17 00:00:00 2001 From: Donald Sharp Date: Wed, 2 Nov 2016 10:53:28 -0400 Subject: [PATCH] pimd: Add the ability to test if the RPF' is the same Test the ability to see if two RPF' are the same or not. Signed-off-by: Donald Sharp --- pimd/pim_rpf.c | 9 +++++++++ pimd/pim_rpf.h | 1 + 2 files changed, 10 insertions(+) diff --git a/pimd/pim_rpf.c b/pimd/pim_rpf.c index 1724185e97..b71024711a 100644 --- a/pimd/pim_rpf.c +++ b/pimd/pim_rpf.c @@ -347,3 +347,12 @@ pim_rpf_addr_is_inaddr_any (struct pim_rpf *rpf) return 0; } + +int +pim_rpf_is_same (struct pim_rpf *rpf1, struct pim_rpf *rpf2) +{ + if (rpf1->source_nexthop.interface == rpf2->source_nexthop.interface) + return 1; + + return 0; +} diff --git a/pimd/pim_rpf.h b/pimd/pim_rpf.h index b267a9b6fa..e54aa51256 100644 --- a/pimd/pim_rpf.h +++ b/pimd/pim_rpf.h @@ -69,5 +69,6 @@ enum pim_rpf_result pim_rpf_update(struct pim_upstream *up, struct in_addr *old_ int pim_rpf_addr_is_inaddr_none (struct pim_rpf *rpf); int pim_rpf_addr_is_inaddr_any (struct pim_rpf *rpf); +int pim_rpf_is_same (struct pim_rpf *rpf1, struct pim_rpf *rpf2); void pim_rpf_set_refresh_time (void); #endif /* PIM_RPF_H */ -- 2.39.5