diff options
| author | Corey Siltala <csiltala@atcorp.com> | 2024-11-26 08:35:42 -0600 |
|---|---|---|
| committer | Corey Siltala <csiltala@atcorp.com> | 2024-12-06 14:44:52 -0600 |
| commit | 8465ba1dde06102ae631ad3d53c2e2e53cc6c7b9 (patch) | |
| tree | 252ceafb94a921fc4f19f96e94d2c146152f5ad5 /pimd/pim_util.c | |
| parent | ff5309ca2d0291cd6da776dd83c210fb01aeb948 (diff) | |
pimd: Convert boundary_oil_plist to struct prefix_list
Rather than storing the prefix-list name and looking it up every time we use it, store a pointer to the prefix-list itself.
Signed-off-by: Corey Siltala <csiltala@atcorp.com>
Diffstat (limited to 'pimd/pim_util.c')
| -rw-r--r-- | pimd/pim_util.c | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/pimd/pim_util.c b/pimd/pim_util.c index b6f3be52fc..40404714e7 100644 --- a/pimd/pim_util.c +++ b/pimd/pim_util.c @@ -9,6 +9,7 @@ #include "log.h" #include "prefix.h" #include "plist.h" +#include "plist_int.h" #include "pimd.h" #include "pim_instance.h" @@ -174,7 +175,6 @@ bool pim_is_group_filtered(struct pim_interface *pim_ifp, pim_addr *grp, pim_add bool is_filtered = false; #if PIM_IPV == 4 struct prefix grp_pfx = {}; - struct prefix_list *pl = NULL; pim_addr any_src = PIMADDR_ANY; if (!pim_ifp->boundary_oil_plist && !pim_ifp->boundary_acl) @@ -182,14 +182,13 @@ bool pim_is_group_filtered(struct pim_interface *pim_ifp, pim_addr *grp, pim_add pim_addr_to_prefix(&grp_pfx, *grp); - pl = prefix_list_lookup(PIM_AFI, pim_ifp->boundary_oil_plist); - /* Filter if either group or (S,G) are denied */ - if (pl) { - is_filtered = prefix_list_apply_ext(pl, NULL, &grp_pfx, true) == PREFIX_DENY; + if (pim_ifp->boundary_oil_plist) { + is_filtered = prefix_list_apply_ext(pim_ifp->boundary_oil_plist, NULL, &grp_pfx, + true) == PREFIX_DENY; if (is_filtered && PIM_DEBUG_EVENTS) { zlog_debug("Filtering group %pI4 per prefix-list %s", grp, - pim_ifp->boundary_oil_plist); + pim_ifp->boundary_oil_plist->name); } } if (!is_filtered && pim_ifp->boundary_acl) { |
