| /** |
| * This file has no copyright assigned and is placed in the Public Domain. |
| * This file is part of the mingw-w64 runtime package. |
| * No warranty is given; refer to the file DISCLAIMER.PD within this package. |
| */ |
| |
| #ifndef s6_addr |
| |
| #ifdef __LP64__ |
| #pragma push_macro("u_long") |
| #undef u_long |
| #define u_long __ms_u_long |
| #endif |
| |
| #include <_bsd_types.h> |
| |
| typedef struct in6_addr { |
| union { |
| u_char Byte[16]; |
| u_short Word[8]; |
| #ifdef __INSIDE_CYGWIN__ |
| uint32_t __s6_addr32[4]; |
| #endif |
| } u; |
| } IN6_ADDR, *PIN6_ADDR, *LPIN6_ADDR; |
| |
| #define in_addr6 in6_addr |
| |
| #define _S6_un u |
| #define _S6_u8 Byte |
| #define s6_addr _S6_un._S6_u8 |
| |
| #define s6_bytes u.Byte |
| #define s6_words u.Word |
| |
| #ifdef __INSIDE_CYGWIN__ |
| #define s6_addr16 u.Word |
| #define s6_addr32 u.__s6_addr32 |
| #endif |
| |
| #ifdef __LP64__ |
| #pragma pop_macro("u_long") |
| #endif |
| |
| #endif /* s6_addr */ |
| |