summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--pimd/pim_oil.c20
1 files changed, 6 insertions, 14 deletions
diff --git a/pimd/pim_oil.c b/pimd/pim_oil.c
index 5b5cc2c103..9434ae07b7 100644
--- a/pimd/pim_oil.c
+++ b/pimd/pim_oil.c
@@ -544,27 +544,19 @@ int pim_channel_add_oif(struct channel_oil *channel_oil, struct interface *oif,
int pim_channel_oil_empty(struct channel_oil *c_oil)
{
-#if PIM_IPV == 4
- static struct mfcctl null_oil;
-#else
- static struct mf6cctl null_oil;
-#endif
+ static struct channel_oil null_oil;
if (!c_oil)
return 1;
-
/* exclude pimreg from the OIL when checking if the inherited_oil is
* non-NULL.
* pimreg device (in all vrfs) uses a vifi of
* 0 (PIM_OIF_PIM_REGISTER_VIF) so we simply mfcc_ttls[0] */
- if (oil_if_has(c_oil, 0)) {
-#if PIM_IPV == 4
- null_oil.mfcc_ttls[0] = 1;
-#else
- IF_SET(0, &null_oil.mf6cc_ifset);
-#endif
- }
+ if (oil_if_has(c_oil, 0))
+ oil_if_set(&null_oil, 0, 1);
+ else
+ oil_if_set(&null_oil, 0, 0);
- return !oil_if_cmp(&c_oil->oil, &null_oil);
+ return !oil_if_cmp(&c_oil->oil, &null_oil.oil);
}