diff --git a/include/ws2ipdef.h b/include/ws2ipdef.h index adc534dcb32..51d4c9f5ac2 100644 --- a/include/ws2ipdef.h +++ b/include/ws2ipdef.h @@ -337,13 +337,43 @@ typedef struct WS(in6_pktinfo) { #ifndef USE_WS_PREFIX #define INET_ADDRSTRLEN 22 #define INET6_ADDRSTRLEN 65 -#define IN6ADDR_ANY_INIT { 0 } -#define IN6ADDR_LOOPBACK_INIT { 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1 } +#define IN6ADDR_6BONETESTPREFIX_INIT { 0x3f,0xfe,0,0,0,0,0,0,0,0,0,0,0,0,0,0 } +#define IN6ADDR_6TO4PREFIX_INIT { 0x20,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0 } +#define IN6ADDR_ALLMLDV2ROUTERSONLINK_INIT { 0xff,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0x16 } +#define IN6ADDR_ALLNODESONLINK_INIT { 0xff,2,0,0,0,0,0,0,0,0,0,0,0,0,0,1 } +#define IN6ADDR_ALLNODESONNODE_INIT { 0xff,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1 } +#define IN6ADDR_ALLROUTERSONLINK_INIT { 0xff,2,0,0,0,0,0,0,0,0,0,0,0,0,0,2 } +#define IN6ADDR_ANY_INIT { 0 } +#define IN6ADDR_LINKLOCALPREFIX_INIT { 0xfe,0x80,0,0,0,0,0,0,0,0,0,0,0,0,0,0 } +#define IN6ADDR_LOOPBACK_INIT { 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1 } +#define IN6ADDR_MULTICASTPREFIX_INIT { 0xff,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 } +#define IN6ADDR_SITELOCALPREFIX_INIT { 0xfe,0xc0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 } +#define IN6ADDR_SOLICITEDNODEMULTICASTPREFIX_INIT { 0xff,2,0,0,0,0,0,0,0,0,0,0x01,0xff,0,0,0 } +#define IN6ADDR_TEREDOINITIALLINKLOCALADDRESS_INIT { 0xfe,0x80,0,0,0,0,0,0,0,0,0xff,0xff,0xff,0xff,0xff,0xfe } +#define IN6ADDR_TEREDOPREFIX_INIT { 0x20,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0 } +#define IN6ADDR_TEREDOPREFIX_INIT_OLD { 0x3f,0xfe,0x83,0x1f,0,0,0,0,0,0,0,0,0,0,0,0 } +#define IN6ADDR_ULAPREFIX_INIT { 0xfc,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 } +#define IN6ADDR_V4MAPPEDPREFIX_INIT { 0,0,0,0,0,0,0,0,0,0,0xff,0xff,0,0,0,0 } #else #define WS_INET_ADDRSTRLEN 22 #define WS_INET6_ADDRSTRLEN 65 -#define WS_IN6ADDR_ANY_INIT { 0 } -#define WS_IN6ADDR_LOOPBACK_INIT { 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1 } +#define WS_IN6ADDR_6BONETESTPREFIX_INIT { 0x3f,0xfe,0,0,0,0,0,0,0,0,0,0,0,0,0,0 } +#define WS_IN6ADDR_6TO4PREFIX_INIT { 0x20,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0 } +#define WS_IN6ADDR_ALLMLDV2ROUTERSONLINK_INIT { 0xff,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0x16 } +#define WS_IN6ADDR_ALLNODESONLINK_INIT { 0xff,2,0,0,0,0,0,0,0,0,0,0,0,0,0,1 } +#define WS_IN6ADDR_ALLNODESONNODE_INIT { 0xff,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1 } +#define WS_IN6ADDR_ALLROUTERSONLINK_INIT { 0xff,2,0,0,0,0,0,0,0,0,0,0,0,0,0,2 } +#define WS_IN6ADDR_ANY_INIT { 0 } +#define WS_IN6ADDR_LINKLOCALPREFIX_INIT { 0xfe,0x80,0,0,0,0,0,0,0,0,0,0,0,0,0,0 } +#define WS_IN6ADDR_LOOPBACK_INIT { 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1 } +#define WS_IN6ADDR_MULTICASTPREFIX_INIT { 0xff,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 } +#define WS_IN6ADDR_SITELOCALPREFIX_INIT { 0xfe,0xc0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 } +#define WS_IN6ADDR_SOLICITEDNODEMULTICASTPREFIX_INIT { 0xff,2,0,0,0,0,0,0,0,0,0,0x01,0xff,0,0,0 } +#define WS_IN6ADDR_TEREDOINITIALLINKLOCALADDRESS_INIT { 0xfe,0x80,0,0,0,0,0,0,0,0,0xff,0xff,0xff,0xff,0xff,0xfe } +#define WS_IN6ADDR_TEREDOPREFIX_INIT { 0x20,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0 } +#define WS_IN6ADDR_TEREDOPREFIX_INIT_OLD { 0x3f,0xfe,0x83,0x1f,0,0,0,0,0,0,0,0,0,0,0,0 } +#define WS_IN6ADDR_ULAPREFIX_INIT { 0xfc,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 } +#define WS_IN6ADDR_V4MAPPEDPREFIX_INIT { 0,0,0,0,0,0,0,0,0,0,0xff,0xff,0,0,0,0 } #endif /* USE_WS_PREFIX */ #define SS_PORT(ssp) (((PSOCKADDR_IN)(ssp))->sin_port)