Lines Matching defs:a1

581 static inline int ipv6_addr_cmp(const struct in6_addr *a1, const struct in6_addr *a2)
583 return memcmp(a1, a2, sizeof(struct in6_addr));
587 ipv6_masked_addr_cmp(const struct in6_addr *a1, const struct in6_addr *m,
591 const unsigned long *ul1 = (const unsigned long *)a1;
598 return !!(((a1->s6_addr32[0] ^ a2->s6_addr32[0]) & m->s6_addr32[0]) |
599 ((a1->s6_addr32[1] ^ a2->s6_addr32[1]) & m->s6_addr32[1]) |
600 ((a1->s6_addr32[2] ^ a2->s6_addr32[2]) & m->s6_addr32[2]) |
601 ((a1->s6_addr32[3] ^ a2->s6_addr32[3]) & m->s6_addr32[3]));
662 static inline bool ipv6_addr_equal(const struct in6_addr *a1,
666 const unsigned long *ul1 = (const unsigned long *)a1;
671 return ((a1->s6_addr32[0] ^ a2->s6_addr32[0]) |
672 (a1->s6_addr32[1] ^ a2->s6_addr32[1]) |
673 (a1->s6_addr32[2] ^ a2->s6_addr32[2]) |
674 (a1->s6_addr32[3] ^ a2->s6_addr32[3])) == 0;
679 static inline bool __ipv6_prefix_equal64_half(const __be64 *a1,
683 if (len && ((*a1 ^ *a2) & cpu_to_be64((~0UL) << (64 - len))))
692 const __be64 *a1 = (const __be64 *)addr1;
696 if (a1[0] ^ a2[0])
698 return __ipv6_prefix_equal64_half(a1 + 1, a2 + 1, prefixlen - 64);
700 return __ipv6_prefix_equal64_half(a1, a2, prefixlen);
707 const __be32 *a1 = addr1->s6_addr32;
713 if (pdw && memcmp(a1, a2, pdw << 2))
718 if (pbi && ((a1[pdw] ^ a2[pdw]) & htonl((0xffffffff) << (32 - pbi))))
835 const __be32 *a1 = token1, *a2 = token2;
841 __be32 xb = a1[i] ^ a2[i];
868 const __be64 *a1 = token1, *a2 = token2;
874 __be64 xb = a1[i] ^ a2[i];
892 static inline int ipv6_addr_diff(const struct in6_addr *a1, const struct in6_addr *a2)
894 return __ipv6_addr_diff(a1, a2, sizeof(struct in6_addr));