in-addr-util: introduce in{4,6}_addr_prefix_intersect()

This commit is contained in:
Yu Watanabe
2024-04-24 12:22:05 +09:00
parent 9dc2503539
commit 21ae0b4b3c
2 changed files with 67 additions and 41 deletions
+16 -1
View File
@@ -61,7 +61,22 @@ bool in6_addr_is_ipv4_mapped_address(const struct in6_addr *a);
bool in4_addr_equal(const struct in_addr *a, const struct in_addr *b);
bool in6_addr_equal(const struct in6_addr *a, const struct in6_addr *b);
int in_addr_equal(int family, const union in_addr_union *a, const union in_addr_union *b);
int in_addr_prefix_intersect(int family, const union in_addr_union *a, unsigned aprefixlen, const union in_addr_union *b, unsigned bprefixlen);
bool in4_addr_prefix_intersect(
const struct in_addr *a,
unsigned aprefixlen,
const struct in_addr *b,
unsigned bprefixlen);
bool in6_addr_prefix_intersect(
const struct in6_addr *a,
unsigned aprefixlen,
const struct in6_addr *b,
unsigned bprefixlen);
int in_addr_prefix_intersect(
int family,
const union in_addr_union *a,
unsigned aprefixlen,
const union in_addr_union *b,
unsigned bprefixlen);
int in_addr_prefix_next(int family, union in_addr_union *u, unsigned prefixlen);
int in_addr_prefix_nth(int family, union in_addr_union *u, unsigned prefixlen, uint64_t nth);
int in_addr_random_prefix(int family, union in_addr_union *u, unsigned prefixlen_fixed_part, unsigned prefixlen);