]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
in-addr-util: introduce in6_addr_equal()
authorYu Watanabe <watanabe.yu+github@gmail.com>
Wed, 17 Feb 2021 17:17:08 +0000 (02:17 +0900)
committerYu Watanabe <watanabe.yu+github@gmail.com>
Wed, 17 Feb 2021 18:48:06 +0000 (03:48 +0900)
src/basic/in-addr-util.c
src/basic/in-addr-util.h

index 06632b846d23b188eaf67cc7b0d7c3f43aec6886..f7a7252f1af4d5f9e0722b0c424d6299b8279e8f 100644 (file)
@@ -128,6 +128,13 @@ bool in4_addr_equal(const struct in_addr *a, const struct in_addr *b) {
         return a->s_addr == b->s_addr;
 }
 
+bool in6_addr_equal(const struct in6_addr *a, const struct in6_addr *b) {
+        assert(a);
+        assert(b);
+
+        return IN6_ARE_ADDR_EQUAL(a, b);
+}
+
 int in_addr_equal(int family, const union in_addr_union *a, const union in_addr_union *b) {
         assert(a);
         assert(b);
@@ -136,7 +143,7 @@ int in_addr_equal(int family, const union in_addr_union *a, const union in_addr_
                 return in4_addr_equal(&a->in, &b->in);
 
         if (family == AF_INET6)
-                return IN6_ARE_ADDR_EQUAL(&a->in6, &b->in6);
+                return in6_addr_equal(&a->in6, &b->in6);
 
         return -EAFNOSUPPORT;
 }
index 7494358d4239a42295330ffeac0c75dae52ea146..519ee53b3a48126d3e2a2f3c24defeb768dc8775 100644 (file)
@@ -54,6 +54,7 @@ bool in4_addr_is_local_multicast(const struct in_addr *a);
 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);
+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);
 int in_addr_prefix_next(int family, union in_addr_union *u, unsigned prefixlen);