From: Yu Watanabe Date: Sat, 6 Jul 2019 02:14:43 +0000 (+0900) Subject: util: introduce in4_addr_equal() X-Git-Tag: v243-rc1~145^2~4 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=9a897e22d488e055c3da2e9366a6f2b8154dc591;p=thirdparty%2Fsystemd.git util: introduce in4_addr_equal() --- diff --git a/src/basic/in-addr-util.c b/src/basic/in-addr-util.c index c1fab51b5e4..fad239691ca 100644 --- a/src/basic/in-addr-util.c +++ b/src/basic/in-addr-util.c @@ -91,12 +91,19 @@ int in_addr_is_localhost(int family, const union in_addr_union *u) { return -EAFNOSUPPORT; } +bool in4_addr_equal(const struct in_addr *a, const struct in_addr *b) { + assert(a); + assert(b); + + return a->s_addr == b->s_addr; +} + int in_addr_equal(int family, const union in_addr_union *a, const union in_addr_union *b) { assert(a); assert(b); if (family == AF_INET) - return a->in.s_addr == b->in.s_addr; + return in4_addr_equal(&a->in, &b->in); if (family == AF_INET6) return diff --git a/src/basic/in-addr-util.h b/src/basic/in-addr-util.h index 2ca7f4b32fc..28afc7d86cf 100644 --- a/src/basic/in-addr-util.h +++ b/src/basic/in-addr-util.h @@ -32,6 +32,7 @@ int in_addr_is_localhost(int family, const union in_addr_union *u); bool in4_addr_is_non_local(const struct in_addr *a); +bool in4_addr_equal(const struct in_addr *a, const struct in_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); int in_addr_prefix_next(int family, union in_addr_union *u, unsigned prefixlen);