Alexandre Julliard wrote:
Jeff Latimer lats@yless4u.com.au writes:
diff --git a/include/ws2tcpip.h b/include/ws2tcpip.h index a38ccda..9ddb3d1 100644 --- a/include/ws2tcpip.h +++ b/include/ws2tcpip.h @@ -85,26 +85,41 @@ struct WS(ip_msfilter) { struct WS(in_addr) imsf_slist[1]; };
-typedef struct WS(in_addr6) -{
- WS(u_char) s6_addr[16]; /* IPv6 address */
+struct WS(in6_addr) {
- union {
WS(u_char) Byte[16];
WS(u_short) Word[8];
- } u;
} IN6_ADDR, *PIN6_ADDR, *LPIN6_ADDR;
+#define in_addr6 WS(in6_addr)
+#define _S6_un u +#define _S6_u8 Byte +#ifndef USE_WS_PREFIX +#define s6_addr _S6_un._S6_u8 +#else +#define WS_s6_addr _S6_un._S6_u8 +#endif
+#define s6_bytes u.Byte +#define s6_words u.Word
This doesn't seem to match the PSDK, I don't see anything like this in ws2tcpip.h.
The following is from WS2tcpip.h in the XP PSDK that I have. I think it looks similar to what I submitted. Have I got he wrong PSDK?
/* IPv6 definitions */
#ifndef s6_addr
struct in6_addr { union { u_char Byte[16]; u_short Word[8]; } u; };
#define in_addr6 in6_addr
/* ** Defines to match RFC 2553. */ #define _S6_un u #define _S6_u8 Byte #define s6_addr _S6_un._S6_u8
/* ** Defines for our implementation. */ #define s6_bytes u.Byte #define s6_words u.Word
#endif