From c3c20fdc0b2d937edbd958dfd939a571dc27167e Mon Sep 17 00:00:00 2001 From: Huw Davies Date: Thu, 22 Jul 2021 12:50:20 +0100 Subject: [PATCH] include: Add IN6_IS_ADDR_LINKLOCAL() and IN6_IS_ADDR_SITELOCAL(). Signed-off-by: Huw Davies Signed-off-by: Alexandre Julliard --- include/ws2ipdef.h | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/include/ws2ipdef.h b/include/ws2ipdef.h index fc465804962..2f9d4f663ad 100644 --- a/include/ws2ipdef.h +++ b/include/ws2ipdef.h @@ -323,6 +323,16 @@ static inline BOOLEAN WS(IN6_IS_ADDR_UNSPECIFIED) ( const IN6_ADDR *a ) (a->s6_words[7] == 0)); } +static inline BOOLEAN WS(IN6_IS_ADDR_LINKLOCAL) ( const IN6_ADDR *a ) +{ + return ((a->s6_bytes[0] == 0xfe) && ((a->s6_bytes[1] & 0xc0) == 0x80)); +} + +static inline BOOLEAN WS(IN6_IS_ADDR_SITELOCAL) ( const IN6_ADDR *a ) +{ + return ((a->s6_bytes[0] == 0xfe) && ((a->s6_bytes[1] & 0xc0) == 0xc0)); +} + #ifdef __cplusplus } #endif