]> git.ipfire.org Git - thirdparty/bind9.git/commitdiff
3015. [port] win32: fix IN6_IS_ADDR_LINKLOCAL and
authorMark Andrews <marka@isc.org>
Thu, 3 Feb 2011 08:16:30 +0000 (08:16 +0000)
committerMark Andrews <marka@isc.org>
Thu, 3 Feb 2011 08:16:30 +0000 (08:16 +0000)
                        IN6_IS_ADDR_SITELOCAL macros. [RT #22724]

CHANGES
lib/isc/win32/include/isc/ipv6.h

diff --git a/CHANGES b/CHANGES
index a50f8c50669ba73c0575ab38ba0f833236859bde..b11450b45b2c5f097c2b45150c1f94e53e696746 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -1,3 +1,6 @@
+3015.  [port]          win32: fix IN6_IS_ADDR_LINKLOCAL and
+                       IN6_IS_ADDR_SITELOCAL macros. [RT #22724]
+
 3013.  [bug]           The DNS64 ttl was not always being set as expected.
                        [RT #23034]
 
index c9add0b37944c44be3c3bf584d1f306fadcea0aa..a96e75e32adaf149ca5e02a1ba8894ea585895ad 100644 (file)
@@ -15,7 +15,7 @@
  * PERFORMANCE OF THIS SOFTWARE.
  */
 
-/* $Id: ipv6.h,v 1.19 2007/06/18 23:47:49 tbox Exp $ */
+/* $Id: ipv6.h,v 1.19.814.1 2011/02/03 08:16:30 marka Exp $ */
 
 #ifndef ISC_IPV6_H
 #define ISC_IPV6_H 1
@@ -111,14 +111,14 @@ LIBISC_EXTERNAL_DATA extern const struct in6_addr isc_in6addr_loopback;
  */
 #ifndef IN6_IS_ADDR_LINKLOCAL
 #define IN6_IS_ADDR_LINKLOCAL(a)       (\
-(*((u_long *)((a)->s6_addr)    ) == 0xfe) && \
-((*((u_long *)((a)->s6_addr) + 1) & 0xc0) == 0x80))
+       ((a)->s6_addr[0] == 0xfe) && \
+       (((a)->s6_addr[1] & 0xc0) == 0x80))
 #endif
 
 #ifndef IN6_IS_ADDR_SITELOCAL
 #define IN6_IS_ADDR_SITELOCAL(a)       (\
-(*((u_long *)((a)->s6_addr)    ) == 0xfe) && \
-((*((u_long *)((a)->s6_addr) + 1) & 0xc0) == 0xc0))
+       ((a)->s6_addr[0] == 0xfe) && \
+       (((a)->s6_addr[1] & 0xc0) == 0xc0))
 #endif
 
 #endif /* ISC_IPV6_H */