diff options
| author | David Lamparter <equinox@opensourcerouting.org> | 2021-06-23 16:35:44 +0200 |
|---|---|---|
| committer | David Lamparter <equinox@opensourcerouting.org> | 2021-11-17 11:17:44 +0100 |
| commit | 1e9044be8d4325fa82f01d72eb6c8581dcd6fd06 (patch) | |
| tree | 587f2a6a425b6328de693f0e39bd79c0e4e82d47 /pimd/pim_bsm.c | |
| parent | 7022e70d744105999ebd087701650c01d4faa3e0 (diff) | |
*: clean up ifp-by-local-address function(s)
Most users of if_lookup_address_exact only cared about whether the
address is any local address. Split that off into a separate function.
For the users that actually need the ifp - which I'm about to add a few
of - change it to prefer returning interfaces that are UP.
(Function name changed due to slight change in behavior re. UP state, to
avoid possible bugs from this change.)
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
Diffstat (limited to 'pimd/pim_bsm.c')
| -rw-r--r-- | pimd/pim_bsm.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/pimd/pim_bsm.c b/pimd/pim_bsm.c index a3a3426f39..6c4c7eeb5a 100644 --- a/pimd/pim_bsm.c +++ b/pimd/pim_bsm.c @@ -1323,8 +1323,8 @@ int pim_bsm_process(struct interface *ifp, struct ip *ip_hdr, uint8_t *buf, return -1; } } - } else if (if_lookup_exact_address(&ip_hdr->ip_dst, AF_INET, - pim->vrf->vrf_id)) { + } else if (if_address_is_local(&ip_hdr->ip_dst, AF_INET, + pim->vrf->vrf_id)) { /* Unicast BSM received - if ucast bsm not enabled on * the interface, drop it */ |
