diff options
| author | mobash-rasool <mobash.rasool@gmail.com> | 2022-11-24 10:56:32 +0530 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-11-24 10:56:32 +0530 |
| commit | 67e2017f84fd06dcfcb8dc2bcfe2085b4462809c (patch) | |
| tree | 3eb1bc9b1f05a925611fecf76ae42f2f95381d04 | |
| parent | 56a3ac3b5d96e507340cee29467ebf28e868d081 (diff) | |
| parent | f8766ccbf073303ef998a3355136a9f08420033b (diff) | |
Merge pull request #12378 from FRRouting/mergify/bp/stable/8.4/pr-12260
pimd: consistently ignore prefix list mask len (backport #12260)
| -rw-r--r-- | pimd/pim_ifchannel.c | 5 | ||||
| -rw-r--r-- | pimd/pim_register.c | 3 | ||||
| -rw-r--r-- | pimd/pim_ssm.c | 3 | ||||
| -rw-r--r-- | pimd/pim_upstream.c | 2 | ||||
| -rw-r--r-- | pimd/pim_util.c | 4 |
5 files changed, 11 insertions, 6 deletions
diff --git a/pimd/pim_ifchannel.c b/pimd/pim_ifchannel.c index ce252366ce..3310009c02 100644 --- a/pimd/pim_ifchannel.c +++ b/pimd/pim_ifchannel.c @@ -1217,8 +1217,9 @@ int pim_ifchannel_local_membership_add(struct interface *ifp, pim_sgaddr *sg, struct prefix g; pim_addr_to_prefix(&g, up->sg.grp); - if (prefix_list_apply(plist, &g) - == PREFIX_DENY) { + if (prefix_list_apply_ext(plist, NULL, &g, + true) == + PREFIX_DENY) { pim_channel_add_oif( up->channel_oil, pim->regiface, PIM_OIF_FLAG_PROTO_GM, diff --git a/pimd/pim_register.c b/pimd/pim_register.c index 4e2c44b172..9ccdae13bc 100644 --- a/pimd/pim_register.c +++ b/pimd/pim_register.c @@ -629,7 +629,8 @@ int pim_register_recv(struct interface *ifp, pim_addr dest_addr, pim_addr_to_prefix(&src, sg.src); - if (prefix_list_apply(plist, &src) == PREFIX_DENY) { + if (prefix_list_apply_ext(plist, NULL, &src, true) == + PREFIX_DENY) { pim_register_stop_send(ifp, &sg, dest_addr, src_addr); if (PIM_DEBUG_PIM_PACKETS) diff --git a/pimd/pim_ssm.c b/pimd/pim_ssm.c index 1ff60f9b64..62246cc239 100644 --- a/pimd/pim_ssm.c +++ b/pimd/pim_ssm.c @@ -93,7 +93,8 @@ int pim_is_grp_ssm(struct pim_instance *pim, pim_addr group_addr) if (!plist) return 0; - return (prefix_list_apply(plist, &group) == PREFIX_PERMIT); + return (prefix_list_apply_ext(plist, NULL, &group, true) == + PREFIX_PERMIT); } int pim_ssm_range_set(struct pim_instance *pim, vrf_id_t vrf_id, diff --git a/pimd/pim_upstream.c b/pimd/pim_upstream.c index 0742daa4de..dbc5c5d10a 100644 --- a/pimd/pim_upstream.c +++ b/pimd/pim_upstream.c @@ -2154,7 +2154,7 @@ void pim_upstream_remove_lhr_star_pimreg(struct pim_instance *pim, continue; } pim_addr_to_prefix(&g, up->sg.grp); - apply_new = prefix_list_apply(np, &g); + apply_new = prefix_list_apply_ext(np, NULL, &g, true); if (apply_new == PREFIX_DENY) pim_channel_add_oif(up->channel_oil, pim->regiface, PIM_OIF_FLAG_PROTO_GM, __func__); diff --git a/pimd/pim_util.c b/pimd/pim_util.c index 150e1a01ea..273c332c95 100644 --- a/pimd/pim_util.c +++ b/pimd/pim_util.c @@ -150,7 +150,9 @@ bool pim_is_group_filtered(struct pim_interface *pim_ifp, pim_addr *grp) pim_addr_to_prefix(&grp_pfx, *grp); pl = prefix_list_lookup(PIM_AFI, pim_ifp->boundary_oil_plist); - return pl ? prefix_list_apply(pl, &grp_pfx) == PREFIX_DENY : false; + return pl ? prefix_list_apply_ext(pl, NULL, &grp_pfx, true) == + PREFIX_DENY + : false; } |
