diff options
| author | Mark Stapp <mjs@voltanet.io> | 2021-07-02 07:52:22 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-07-02 07:52:22 -0400 |
| commit | 0a9fcd96d186bf2bbbb7a9148ced1eeadfbd5e03 (patch) | |
| tree | cc8582fd1ca1b095f1a917b8c5077ccc392cb114 /lib/filter.c | |
| parent | 1e15822698cc62d0c30069688b5b2054acb21722 (diff) | |
| parent | 8643c2e5f7b5541f136a3dfff5abe5b537159442 (diff) | |
Merge pull request #8970 from ton31337/fix/use_IPV6_MAX_BITLEN
*: Do not use 32/128 numbers for prefixlen
Diffstat (limited to 'lib/filter.c')
| -rw-r--r-- | lib/filter.c | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/lib/filter.c b/lib/filter.c index b7a935d076..72a66d85ad 100644 --- a/lib/filter.c +++ b/lib/filter.c @@ -108,10 +108,14 @@ static int filter_match_cisco(struct filter *mfilter, const struct prefix *p) masklen2ip(p->prefixlen, &mask); check_mask = mask.s_addr & ~filter->mask_mask.s_addr; - if (memcmp(&check_addr, &filter->addr.s_addr, 4) == 0 - && memcmp(&check_mask, &filter->mask.s_addr, 4) == 0) + if (memcmp(&check_addr, &filter->addr.s_addr, IPV4_MAX_BYTELEN) + == 0 + && memcmp(&check_mask, &filter->mask.s_addr, + IPV4_MAX_BYTELEN) + == 0) return 1; - } else if (memcmp(&check_addr, &filter->addr.s_addr, 4) == 0) + } else if (memcmp(&check_addr, &filter->addr.s_addr, IPV4_MAX_BYTELEN) + == 0) return 1; return 0; |
