summaryrefslogtreecommitdiff
path: root/lib/sockunion.c
diff options
context:
space:
mode:
Diffstat (limited to 'lib/sockunion.c')
-rw-r--r--lib/sockunion.c8
1 files changed, 3 insertions, 5 deletions
diff --git a/lib/sockunion.c b/lib/sockunion.c
index 4a7c190953..7acb5004db 100644
--- a/lib/sockunion.c
+++ b/lib/sockunion.c
@@ -403,8 +403,7 @@ int sockunion_same(const union sockunion *su1, const union sockunion *su2)
sizeof(struct in_addr));
break;
case AF_INET6:
- ret = memcmp(&su1->sin6.sin6_addr, &su2->sin6.sin6_addr,
- sizeof(struct in6_addr));
+ ret = IPV6_ADDR_CMP(&su1->sin6.sin6_addr, &su2->sin6.sin6_addr);
if ((ret == 0) && IN6_IS_ADDR_LINKLOCAL(&su1->sin6.sin6_addr)) {
/* compare interface indices */
if (su1->sin6.sin6_scope_id && su2->sin6.sin6_scope_id)
@@ -604,7 +603,7 @@ int sockunion_cmp(const union sockunion *su1, const union sockunion *su2)
return -1;
}
if (su1->sa.sa_family == AF_INET6)
- return IN6_ADDR_CMP(&su1->sin6.sin6_addr, &su2->sin6.sin6_addr);
+ return IPV6_ADDR_CMP(&su1->sin6.sin6_addr, &su2->sin6.sin6_addr);
return 0;
}
@@ -711,8 +710,7 @@ int sockunion_is_null(const union sockunion *su)
case AF_INET:
return (su->sin.sin_addr.s_addr == 0);
case AF_INET6:
- return !memcmp(su->sin6.sin6_addr.s6_addr, null_s6_addr,
- sizeof(null_s6_addr));
+ return !IPV6_ADDR_CMP(su->sin6.sin6_addr.s6_addr, null_s6_addr);
default:
return 0;
}