]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
util: introduce in4_addr_equal()
authorYu Watanabe <watanabe.yu+github@gmail.com>
Sat, 6 Jul 2019 02:14:43 +0000 (11:14 +0900)
committerYu Watanabe <watanabe.yu+github@gmail.com>
Thu, 11 Jul 2019 13:37:00 +0000 (22:37 +0900)
src/basic/in-addr-util.c
src/basic/in-addr-util.h

index c1fab51b5e43db651d29dce01077d269bb98d862..fad239691ca4a9f9665999faa914dbd8a3efd604 100644 (file)
@@ -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
index 2ca7f4b32fc88b5d8a9ecd2674661839821f4015..28afc7d86cfd91485d6f1fba8c871830d22434d6 100644 (file)
@@ -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);