ReactOS 0.4.16-dev-306-g647d351
ws2ipdef.h File Reference
#include <in6addr.h>
Include dependency graph for ws2ipdef.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  sockaddr_in6_old
 
union  sockaddr_gen
 
struct  _INTERFACE_INFO
 
struct  _INTERFACE_INFO_EX
 
struct  sockaddr_in6
 
struct  sockaddr_in6_w2ksp1
 
union  _SOCKADDR_INET
 
struct  _sockaddr_in6_pair
 
struct  ip_mreq
 
struct  ip_mreq_source
 
struct  ip_msfilter
 
struct  ipv6_mreq
 
struct  group_req
 
struct  group_source_req
 
struct  group_filter
 
struct  in_pktinfo
 
struct  in6_pktinfo
 

Macros

#define _WS2IPDEF_
 
#define WS2IPDEF_ASSERT(exp)   ((VOID) 0)
 
#define WS2TCPIP_INLINE   static inline
 
#define IFF_UP   0x00000001
 
#define IFF_BROADCAST   0x00000002
 
#define IFF_LOOPBACK   0x00000004
 
#define IFF_POINTTOPOINT   0x00000008
 
#define IFF_MULTICAST   0x00000010
 
#define IP_OPTIONS   1
 
#define IP_HDRINCL   2
 
#define IP_TOS   3
 
#define IP_TTL   4
 
#define IP_MULTICAST_IF   9
 
#define IP_MULTICAST_TTL   10
 
#define IP_MULTICAST_LOOP   11
 
#define IP_ADD_MEMBERSHIP   12
 
#define IP_DROP_MEMBERSHIP   13
 
#define IP_DONTFRAGMENT   14
 
#define IP_ADD_SOURCE_MEMBERSHIP   15
 
#define IP_DROP_SOURCE_MEMBERSHIP   16
 
#define IP_BLOCK_SOURCE   17
 
#define IP_UNBLOCK_SOURCE   18
 
#define IP_PKTINFO   19
 
#define IP_HOPLIMIT   21
 
#define IP_RECEIVE_BROADCAST   22
 
#define IP_RECVIF   24
 
#define IP_RECVDSTADDR   25
 
#define IP_IFLIST   28
 
#define IP_ADD_IFLIST   29
 
#define IP_DEL_IFLIST   30
 
#define IP_UNICAST_IF   31
 
#define IP_RTHDR   32
 
#define IP_RECVRTHDR   38
 
#define IP_TCLASS   39
 
#define IP_RECVTCLASS   40
 
#define IP_ORIGINAL_ARRIVAL_IF   47
 
#define IP_UNSPECIFIED_TYPE_OF_SERVICE   -1
 
#define IPV6_ADDRESS_BITS   RTL_BITS_OF(IN6_ADDR)
 
#define SS_PORT(ssp)   (((PSOCKADDR_IN)(ssp))->sin_port)
 
#define SIO_GET_INTERFACE_LIST   _IOR('t', 127, ULONG)
 
#define SIO_GET_INTERFACE_LIST_EX   _IOR('t', 126, ULONG)
 
#define SIO_SET_MULTICAST_FILTER   _IOW('t', 125, ULONG)
 
#define SIO_GET_MULTICAST_FILTER   _IOW('t', 124 | IOC_IN, ULONG)
 
#define SIOCSIPMSFILTER   SIO_SET_MULTICAST_FILTER
 
#define SIOCGIPMSFILTER   SIO_GET_MULTICAST_FILTER
 
#define SIOCSMSFILTER   _IOW('t', 126, ULONG)
 
#define SIOCGMSFILTER   _IOW('t', 127 | IOC_IN, ULONG)
 
#define IDEAL_SEND_BACKLOG_IOCTLS
 
#define SIO_IDEAL_SEND_BACKLOG_QUERY   _IOR('t', 123, ULONG)
 
#define SIO_IDEAL_SEND_BACKLOG_CHANGE   _IO('t', 122)
 
#define MCAST_JOIN_GROUP   41
 
#define MCAST_LEAVE_GROUP   42
 
#define MCAST_BLOCK_SOURCE   43
 
#define MCAST_UNBLOCK_SOURCE   44
 
#define MCAST_JOIN_SOURCE_GROUP   45
 
#define MCAST_LEAVE_SOURCE_GROUP   46
 
#define IP_MSFILTER_SIZE(NumSources)    (sizeof(IP_MSFILTER) - sizeof(IN_ADDR) + (NumSources) * sizeof(IN_ADDR))
 
#define IPV6_HOPOPTS   1
 
#define IPV6_HDRINCL   2
 
#define IPV6_UNICAST_HOPS   4
 
#define IPV6_MULTICAST_IF   9
 
#define IPV6_MULTICAST_HOPS   10
 
#define IPV6_MULTICAST_LOOP   11
 
#define IPV6_ADD_MEMBERSHIP   12
 
#define IPV6_JOIN_GROUP   IPV6_ADD_MEMBERSHIP
 
#define IPV6_DROP_MEMBERSHIP   13
 
#define IPV6_LEAVE_GROUP   IPV6_DROP_MEMBERSHIP
 
#define IPV6_DONTFRAG   14
 
#define IPV6_PKTINFO   19
 
#define IPV6_HOPLIMIT   21
 
#define IPV6_PROTECTION_LEVEL   23
 
#define IPV6_RECVIF   24
 
#define IPV6_RECVDSTADDR   25
 
#define IPV6_CHECKSUM   26
 
#define IPV6_V6ONLY   27
 
#define IPV6_IFLIST   28
 
#define IPV6_ADD_IFLIST   29
 
#define IPV6_DEL_IFLIST   30
 
#define IPV6_UNICAST_IF   31
 
#define IPV6_RTHDR   32
 
#define IPV6_RECVRTHDR   38
 
#define IPV6_TCLASS   39
 
#define IPV6_RECVTCLASS   40
 
#define IP_UNSPECIFIED_HOP_LIMIT   -1
 
#define IP_PROTECTION_LEVEL   IPV6_PROTECTION_LEVEL
 
#define PROTECTION_LEVEL_UNRESTRICTED   10
 
#define PROTECTION_LEVEL_EDGERESTRICTED   20
 
#define PROTECTION_LEVEL_RESTRICTED   30
 
#define PROTECTION_LEVEL_DEFAULT   ((UINT)-1)
 
#define INET_ADDRSTRLEN   22
 
#define INET6_ADDRSTRLEN   65
 
#define TCP_OFFLOAD_NO_PREFERENCE   0
 
#define TCP_OFFLOAD_NOT_PREFERRED   1
 
#define TCP_OFFLOAD_PREFERRED   2
 
#define TCP_EXPEDITED_1122   0x0002
 
#define TCP_KEEPALIVE   3
 
#define TCP_MAXSEG   4
 
#define TCP_MAXRT   5
 
#define TCP_STDURG   6
 
#define TCP_NOURG   7
 
#define TCP_ATMARK   8
 
#define TCP_NOSYNRETRIES   9
 
#define TCP_TIMESTAMPS   10
 
#define TCP_OFFLOAD_PREFERENCE   11
 
#define TCP_CONGESTION_ALGORITHM   12
 
#define TCP_DELAY_FIN_ACK   13
 
#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_ALLNODESONNODE_INIT   {0xff, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01}
 
#define IN6ADDR_ALLNODESONLINK_INIT   {0xff, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01}
 
#define IN6ADDR_ALLROUTERSONLINK_INIT   {0xff, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02}
 
#define IN6ADDR_ALLMLDV2ROUTERSONLINK_INIT   {0xff, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x16}
 
#define IN6ADDR_TEREDOINITIALLINKLOCALADDRESS_INIT   {0xfe, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe}
 
#define IN6ADDR_TEREDOOLDLINKLOCALADDRESSXP_INIT   {0xfe, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 'T', 'E', 'R', 'E', 'D', 'O'}
 
#define IN6ADDR_TEREDOOLDLINKLOCALADDRESSVISTA_INIT   {0xfe, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff}
 
#define IN6ADDR_LINKLOCALPREFIX_INIT   {0xfe, 0x80, }
 
#define IN6ADDR_MULTICASTPREFIX_INIT   {0xff, 0x00, }
 
#define IN6ADDR_SOLICITEDNODEMULTICASTPREFIX_INIT   {0xff, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, }
 
#define IN6ADDR_V4MAPPEDPREFIX_INIT   {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, }
 
#define IN6ADDR_6TO4PREFIX_INIT   {0x20, 0x02, }
 
#define IN6ADDR_TEREDOPREFIX_INIT   {0x20, 0x01, 0x00, 0x00, }
 
#define IN6ADDR_TEREDOPREFIX_INIT_OLD   {0x3f, 0xfe, 0x83, 0x1f, }
 
#define IN6ADDR_LINKLOCALPREFIX_LENGTH   64
 
#define IN6ADDR_MULTICASTPREFIX_LENGTH   8
 
#define IN6ADDR_SOLICITEDNODEMULTICASTPREFIX_LENGTH   104
 
#define IN6ADDR_V4MAPPEDPREFIX_LENGTH   96
 
#define IN6ADDR_6TO4PREFIX_LENGTH   16
 
#define IN6ADDR_TEREDOPREFIX_LENGTH   32
 
#define IN6_ARE_ADDR_EQUAL   IN6_ADDR_EQUAL
 
#define GROUP_FILTER_SIZE(numsrc)
 

Typedefs

typedef union sockaddr_gen sockaddr_gen
 
typedef struct _INTERFACE_INFO INTERFACE_INFO
 
typedef struct _INTERFACE_INFOLPINTERFACE_INFO
 
typedef struct _INTERFACE_INFO_EX INTERFACE_INFO_EX
 
typedef struct _INTERFACE_INFO_EXLPINTERFACE_INFO_EX
 
typedef struct sockaddr_in6 SOCKADDR_IN6_LH
 
typedef struct sockaddr_in6PSOCKADDR_IN6_LH
 
typedef struct sockaddr_in6LPSOCKADDR_IN6_LH
 
typedef struct sockaddr_in6_w2ksp1 SOCKADDR_IN6_W2KSP1
 
typedef struct sockaddr_in6_w2ksp1PSOCKADDR_IN6_W2KSP1
 
typedef struct sockaddr_in6_w2ksp1LPSOCKADDR_IN6_W2KSP1
 
typedef SOCKADDR_IN6_LH SOCKADDR_IN6
 
typedef SOCKADDR_IN6_LHPSOCKADDR_IN6
 
typedef SOCKADDR_IN6_LH FARLPSOCKADDR_IN6
 
typedef union _SOCKADDR_INET SOCKADDR_INET
 
typedef union _SOCKADDR_INETPSOCKADDR_INET
 
typedef struct _sockaddr_in6_pair SOCKADDR_IN6_PAIR
 
typedef struct _sockaddr_in6_pairPSOCKADDR_IN6_PAIR
 
typedef enum _MULTICAST_MODE_TYPE MULTICAST_MODE_TYPE
 
typedef struct ip_mreq IP_MREQ
 
typedef struct ip_mreqPIP_MREQ
 
typedef struct ip_mreq_source IP_MREQ_SOURCE
 
typedef struct ip_mreq_sourcePIP_MREQ_SOURCE
 
typedef struct ip_msfilter IP_MSFILTER
 
typedef struct ip_msfilterPIP_MSFILTER
 
typedef struct ipv6_mreq IPV6_MREQ
 
typedef struct ipv6_mreqPIPV6_MREQ
 
typedef struct group_req GROUP_REQ
 
typedef struct group_reqPGROUP_REQ
 
typedef struct group_source_req GROUP_SOURCE_REQ
 
typedef struct group_source_reqPGROUP_SOURCE_REQ
 
typedef struct group_filter GROUP_FILTER
 
typedef struct group_filterPGROUP_FILTER
 
typedef struct in_pktinfo IN_PKTINFO
 
typedef struct in_pktinfoPIN_PKTINFO
 
typedef struct in6_pktinfo IN6_PKTINFO
 
typedef struct in6_pktinfoPIN6_PKTINFO
 

Enumerations

enum  _MULTICAST_MODE_TYPE { MCAST_INCLUDE = 0 , MCAST_EXCLUDE }
 

Functions

WS2TCPIP_INLINE BOOLEAN IN6_ADDR_EQUAL (CONST IN6_ADDR *x, CONST IN6_ADDR *y)
 
WS2TCPIP_INLINE BOOLEAN IN6_IS_ADDR_UNSPECIFIED (CONST IN6_ADDR *a)
 
WS2TCPIP_INLINE BOOLEAN IN6_IS_ADDR_LOOPBACK (CONST IN6_ADDR *a)
 
WS2TCPIP_INLINE BOOLEAN IN6_IS_ADDR_MULTICAST (CONST IN6_ADDR *a)
 
WS2TCPIP_INLINE BOOLEAN IN6_IS_ADDR_EUI64 (CONST IN6_ADDR *a)
 
WS2TCPIP_INLINE BOOLEAN IN6_IS_ADDR_SUBNET_ROUTER_ANYCAST (CONST IN6_ADDR *a)
 
WS2TCPIP_INLINE BOOLEAN IN6_IS_ADDR_SUBNET_RESERVED_ANYCAST (CONST IN6_ADDR *a)
 
WS2TCPIP_INLINE BOOLEAN IN6_IS_ADDR_ANYCAST (CONST IN6_ADDR *a)
 
WS2TCPIP_INLINE BOOLEAN IN6_IS_ADDR_LINKLOCAL (CONST IN6_ADDR *a)
 
WS2TCPIP_INLINE BOOLEAN IN6_IS_ADDR_SITELOCAL (CONST IN6_ADDR *a)
 
WS2TCPIP_INLINE BOOLEAN IN6_IS_ADDR_GLOBAL (CONST IN6_ADDR *a)
 
WS2TCPIP_INLINE BOOLEAN IN6_IS_ADDR_V4MAPPED (CONST IN6_ADDR *a)
 
WS2TCPIP_INLINE BOOLEAN IN6_IS_ADDR_V4COMPAT (CONST IN6_ADDR *a)
 
WS2TCPIP_INLINE BOOLEAN IN6_IS_ADDR_V4TRANSLATED (CONST IN6_ADDR *a)
 
WS2TCPIP_INLINE BOOLEAN IN6_IS_ADDR_MC_NODELOCAL (CONST IN6_ADDR *a)
 
WS2TCPIP_INLINE BOOLEAN IN6_IS_ADDR_MC_LINKLOCAL (CONST IN6_ADDR *a)
 
WS2TCPIP_INLINE BOOLEAN IN6_IS_ADDR_MC_SITELOCAL (CONST IN6_ADDR *a)
 
WS2TCPIP_INLINE BOOLEAN IN6_IS_ADDR_MC_ORGLOCAL (CONST IN6_ADDR *a)
 
WS2TCPIP_INLINE BOOLEAN IN6_IS_ADDR_MC_GLOBAL (CONST IN6_ADDR *a)
 
WS2TCPIP_INLINE VOID IN6_SET_ADDR_UNSPECIFIED (PIN6_ADDR a)
 
WS2TCPIP_INLINE VOID IN6_SET_ADDR_LOOPBACK (PIN6_ADDR a)
 
WS2TCPIP_INLINE VOID IN6ADDR_SETANY (PSOCKADDR_IN6 a)
 
WS2TCPIP_INLINE VOID IN6ADDR_SETLOOPBACK (PSOCKADDR_IN6 a)
 
WS2TCPIP_INLINE BOOLEAN IN6ADDR_ISANY (CONST SOCKADDR_IN6 *a)
 
WS2TCPIP_INLINE BOOLEAN IN6ADDR_ISLOOPBACK (CONST SOCKADDR_IN6 *a)
 
WS2TCPIP_INLINE BOOLEAN IN6ADDR_ISEQUAL (CONST SOCKADDR_IN6 *a, CONST SOCKADDR_IN6 *b)
 
WS2TCPIP_INLINE BOOLEAN IN6ADDR_ISUNSPECIFIED (CONST SOCKADDR_IN6 *a)
 
 C_ASSERT (sizeof(IN_PKTINFO)==8)
 
 C_ASSERT (sizeof(IN6_PKTINFO)==20)
 

Variables

CONST SCOPE_ID scopeid_unspecified
 
CONST IN_ADDR in4addr_any
 
CONST IN_ADDR in4addr_loopback
 
CONST IN_ADDR in4addr_broadcast
 
CONST IN_ADDR in4addr_allnodesonlink
 
CONST IN_ADDR in4addr_allroutersonlink
 
CONST IN_ADDR in4addr_alligmpv3routersonlink
 
CONST IN_ADDR in4addr_allteredohostsonlink
 
CONST IN_ADDR in4addr_linklocalprefix
 
CONST IN_ADDR in4addr_multicastprefix
 
CONST IN6_ADDR in6addr_any
 
CONST IN6_ADDR in6addr_loopback
 
CONST IN6_ADDR in6addr_allnodesonnode
 
CONST IN6_ADDR in6addr_allnodesonlink
 
CONST IN6_ADDR in6addr_allroutersonlink
 
CONST IN6_ADDR in6addr_allmldv2routersonlink
 
CONST IN6_ADDR in6addr_teredoinitiallinklocaladdress
 
CONST IN6_ADDR in6addr_linklocalprefix
 
CONST IN6_ADDR in6addr_multicastprefix
 
CONST IN6_ADDR in6addr_solicitednodemulticastprefix
 
CONST IN6_ADDR in6addr_v4mappedprefix
 
CONST IN6_ADDR in6addr_6to4prefix
 
CONST IN6_ADDR in6addr_teredoprefix
 
CONST IN6_ADDR in6addr_teredoprefix_old
 

Macro Definition Documentation

◆ _WS2IPDEF_

#define _WS2IPDEF_

Definition at line 3 of file ws2ipdef.h.

◆ GROUP_FILTER_SIZE

#define GROUP_FILTER_SIZE (   numsrc)
Value:
(sizeof(GROUP_FILTER) - sizeof(SOCKADDR_STORAGE) \
+ (numsrc) * sizeof(SOCKADDR_STORAGE))
struct group_filter GROUP_FILTER

Definition at line 571 of file ws2ipdef.h.

◆ IDEAL_SEND_BACKLOG_IOCTLS

#define IDEAL_SEND_BACKLOG_IOCTLS

Definition at line 74 of file ws2ipdef.h.

◆ IFF_BROADCAST

#define IFF_BROADCAST   0x00000002

Definition at line 22 of file ws2ipdef.h.

◆ IFF_LOOPBACK

#define IFF_LOOPBACK   0x00000004

Definition at line 23 of file ws2ipdef.h.

◆ IFF_MULTICAST

#define IFF_MULTICAST   0x00000010

Definition at line 25 of file ws2ipdef.h.

◆ IFF_POINTTOPOINT

#define IFF_POINTTOPOINT   0x00000008

Definition at line 24 of file ws2ipdef.h.

◆ IFF_UP

#define IFF_UP   0x00000001

Definition at line 21 of file ws2ipdef.h.

◆ IN6_ARE_ADDR_EQUAL

#define IN6_ARE_ADDR_EQUAL   IN6_ADDR_EQUAL

Definition at line 294 of file ws2ipdef.h.

◆ IN6ADDR_6TO4PREFIX_INIT

#define IN6ADDR_6TO4PREFIX_INIT   {0x20, 0x02, }

Definition at line 243 of file ws2ipdef.h.

◆ IN6ADDR_6TO4PREFIX_LENGTH

#define IN6ADDR_6TO4PREFIX_LENGTH   16

Definition at line 251 of file ws2ipdef.h.

◆ IN6ADDR_ALLMLDV2ROUTERSONLINK_INIT

#define IN6ADDR_ALLMLDV2ROUTERSONLINK_INIT   {0xff, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x16}

Definition at line 235 of file ws2ipdef.h.

◆ IN6ADDR_ALLNODESONLINK_INIT

#define IN6ADDR_ALLNODESONLINK_INIT   {0xff, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01}

Definition at line 233 of file ws2ipdef.h.

◆ IN6ADDR_ALLNODESONNODE_INIT

#define IN6ADDR_ALLNODESONNODE_INIT   {0xff, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01}

Definition at line 232 of file ws2ipdef.h.

◆ IN6ADDR_ALLROUTERSONLINK_INIT

#define IN6ADDR_ALLROUTERSONLINK_INIT   {0xff, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02}

Definition at line 234 of file ws2ipdef.h.

◆ IN6ADDR_ANY_INIT

#define IN6ADDR_ANY_INIT   {0}

Definition at line 230 of file ws2ipdef.h.

◆ IN6ADDR_LINKLOCALPREFIX_INIT

#define IN6ADDR_LINKLOCALPREFIX_INIT   {0xfe, 0x80, }

Definition at line 239 of file ws2ipdef.h.

◆ IN6ADDR_LINKLOCALPREFIX_LENGTH

#define IN6ADDR_LINKLOCALPREFIX_LENGTH   64

Definition at line 247 of file ws2ipdef.h.

◆ IN6ADDR_LOOPBACK_INIT

#define IN6ADDR_LOOPBACK_INIT   {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1}

Definition at line 231 of file ws2ipdef.h.

◆ IN6ADDR_MULTICASTPREFIX_INIT

#define IN6ADDR_MULTICASTPREFIX_INIT   {0xff, 0x00, }

Definition at line 240 of file ws2ipdef.h.

◆ IN6ADDR_MULTICASTPREFIX_LENGTH

#define IN6ADDR_MULTICASTPREFIX_LENGTH   8

Definition at line 248 of file ws2ipdef.h.

◆ IN6ADDR_SOLICITEDNODEMULTICASTPREFIX_INIT

#define IN6ADDR_SOLICITEDNODEMULTICASTPREFIX_INIT   {0xff, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, }

Definition at line 241 of file ws2ipdef.h.

◆ IN6ADDR_SOLICITEDNODEMULTICASTPREFIX_LENGTH

#define IN6ADDR_SOLICITEDNODEMULTICASTPREFIX_LENGTH   104

Definition at line 249 of file ws2ipdef.h.

◆ IN6ADDR_TEREDOINITIALLINKLOCALADDRESS_INIT

#define IN6ADDR_TEREDOINITIALLINKLOCALADDRESS_INIT   {0xfe, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe}

Definition at line 236 of file ws2ipdef.h.

◆ IN6ADDR_TEREDOOLDLINKLOCALADDRESSVISTA_INIT

#define IN6ADDR_TEREDOOLDLINKLOCALADDRESSVISTA_INIT   {0xfe, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff}

Definition at line 238 of file ws2ipdef.h.

◆ IN6ADDR_TEREDOOLDLINKLOCALADDRESSXP_INIT

#define IN6ADDR_TEREDOOLDLINKLOCALADDRESSXP_INIT   {0xfe, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 'T', 'E', 'R', 'E', 'D', 'O'}

Definition at line 237 of file ws2ipdef.h.

◆ IN6ADDR_TEREDOPREFIX_INIT

#define IN6ADDR_TEREDOPREFIX_INIT   {0x20, 0x01, 0x00, 0x00, }

Definition at line 244 of file ws2ipdef.h.

◆ IN6ADDR_TEREDOPREFIX_INIT_OLD

#define IN6ADDR_TEREDOPREFIX_INIT_OLD   {0x3f, 0xfe, 0x83, 0x1f, }

Definition at line 245 of file ws2ipdef.h.

◆ IN6ADDR_TEREDOPREFIX_LENGTH

#define IN6ADDR_TEREDOPREFIX_LENGTH   32

Definition at line 252 of file ws2ipdef.h.

◆ IN6ADDR_V4MAPPEDPREFIX_INIT

#define IN6ADDR_V4MAPPEDPREFIX_INIT   {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, }

Definition at line 242 of file ws2ipdef.h.

◆ IN6ADDR_V4MAPPEDPREFIX_LENGTH

#define IN6ADDR_V4MAPPEDPREFIX_LENGTH   96

Definition at line 250 of file ws2ipdef.h.

◆ INET6_ADDRSTRLEN

#define INET6_ADDRSTRLEN   65

Definition at line 132 of file ws2ipdef.h.

◆ INET_ADDRSTRLEN

#define INET_ADDRSTRLEN   22

Definition at line 131 of file ws2ipdef.h.

◆ IP_ADD_IFLIST

#define IP_ADD_IFLIST   29

Definition at line 47 of file ws2ipdef.h.

◆ IP_ADD_MEMBERSHIP

#define IP_ADD_MEMBERSHIP   12

Definition at line 34 of file ws2ipdef.h.

◆ IP_ADD_SOURCE_MEMBERSHIP

#define IP_ADD_SOURCE_MEMBERSHIP   15

Definition at line 37 of file ws2ipdef.h.

◆ IP_BLOCK_SOURCE

#define IP_BLOCK_SOURCE   17

Definition at line 39 of file ws2ipdef.h.

◆ IP_DEL_IFLIST

#define IP_DEL_IFLIST   30

Definition at line 48 of file ws2ipdef.h.

◆ IP_DONTFRAGMENT

#define IP_DONTFRAGMENT   14

Definition at line 36 of file ws2ipdef.h.

◆ IP_DROP_MEMBERSHIP

#define IP_DROP_MEMBERSHIP   13

Definition at line 35 of file ws2ipdef.h.

◆ IP_DROP_SOURCE_MEMBERSHIP

#define IP_DROP_SOURCE_MEMBERSHIP   16

Definition at line 38 of file ws2ipdef.h.

◆ IP_HDRINCL

#define IP_HDRINCL   2

Definition at line 28 of file ws2ipdef.h.

◆ IP_HOPLIMIT

#define IP_HOPLIMIT   21

Definition at line 42 of file ws2ipdef.h.

◆ IP_IFLIST

#define IP_IFLIST   28

Definition at line 46 of file ws2ipdef.h.

◆ IP_MSFILTER_SIZE

#define IP_MSFILTER_SIZE (   NumSources)     (sizeof(IP_MSFILTER) - sizeof(IN_ADDR) + (NumSources) * sizeof(IN_ADDR))

Definition at line 88 of file ws2ipdef.h.

◆ IP_MULTICAST_IF

#define IP_MULTICAST_IF   9

Definition at line 31 of file ws2ipdef.h.

◆ IP_MULTICAST_LOOP

#define IP_MULTICAST_LOOP   11

Definition at line 33 of file ws2ipdef.h.

◆ IP_MULTICAST_TTL

#define IP_MULTICAST_TTL   10

Definition at line 32 of file ws2ipdef.h.

◆ IP_OPTIONS

#define IP_OPTIONS   1

Definition at line 27 of file ws2ipdef.h.

◆ IP_ORIGINAL_ARRIVAL_IF

#define IP_ORIGINAL_ARRIVAL_IF   47

Definition at line 54 of file ws2ipdef.h.

◆ IP_PKTINFO

#define IP_PKTINFO   19

Definition at line 41 of file ws2ipdef.h.

◆ IP_PROTECTION_LEVEL

#define IP_PROTECTION_LEVEL   IPV6_PROTECTION_LEVEL

Definition at line 120 of file ws2ipdef.h.

◆ IP_RECEIVE_BROADCAST

#define IP_RECEIVE_BROADCAST   22

Definition at line 43 of file ws2ipdef.h.

◆ IP_RECVDSTADDR

#define IP_RECVDSTADDR   25

Definition at line 45 of file ws2ipdef.h.

◆ IP_RECVIF

#define IP_RECVIF   24

Definition at line 44 of file ws2ipdef.h.

◆ IP_RECVRTHDR

#define IP_RECVRTHDR   38

Definition at line 51 of file ws2ipdef.h.

◆ IP_RECVTCLASS

#define IP_RECVTCLASS   40

Definition at line 53 of file ws2ipdef.h.

◆ IP_RTHDR

#define IP_RTHDR   32

Definition at line 50 of file ws2ipdef.h.

◆ IP_TCLASS

#define IP_TCLASS   39

Definition at line 52 of file ws2ipdef.h.

◆ IP_TOS

#define IP_TOS   3

Definition at line 29 of file ws2ipdef.h.

◆ IP_TTL

#define IP_TTL   4

Definition at line 30 of file ws2ipdef.h.

◆ IP_UNBLOCK_SOURCE

#define IP_UNBLOCK_SOURCE   18

Definition at line 40 of file ws2ipdef.h.

◆ IP_UNICAST_IF

#define IP_UNICAST_IF   31

Definition at line 49 of file ws2ipdef.h.

◆ IP_UNSPECIFIED_HOP_LIMIT

#define IP_UNSPECIFIED_HOP_LIMIT   -1

Definition at line 118 of file ws2ipdef.h.

◆ IP_UNSPECIFIED_TYPE_OF_SERVICE

#define IP_UNSPECIFIED_TYPE_OF_SERVICE   -1

Definition at line 56 of file ws2ipdef.h.

◆ IPV6_ADD_IFLIST

#define IPV6_ADD_IFLIST   29

Definition at line 110 of file ws2ipdef.h.

◆ IPV6_ADD_MEMBERSHIP

#define IPV6_ADD_MEMBERSHIP   12

Definition at line 97 of file ws2ipdef.h.

◆ IPV6_ADDRESS_BITS

#define IPV6_ADDRESS_BITS   RTL_BITS_OF(IN6_ADDR)

Definition at line 58 of file ws2ipdef.h.

◆ IPV6_CHECKSUM

#define IPV6_CHECKSUM   26

Definition at line 107 of file ws2ipdef.h.

◆ IPV6_DEL_IFLIST

#define IPV6_DEL_IFLIST   30

Definition at line 111 of file ws2ipdef.h.

◆ IPV6_DONTFRAG

#define IPV6_DONTFRAG   14

Definition at line 101 of file ws2ipdef.h.

◆ IPV6_DROP_MEMBERSHIP

#define IPV6_DROP_MEMBERSHIP   13

Definition at line 99 of file ws2ipdef.h.

◆ IPV6_HDRINCL

#define IPV6_HDRINCL   2

Definition at line 92 of file ws2ipdef.h.

◆ IPV6_HOPLIMIT

#define IPV6_HOPLIMIT   21

Definition at line 103 of file ws2ipdef.h.

◆ IPV6_HOPOPTS

#define IPV6_HOPOPTS   1

Definition at line 91 of file ws2ipdef.h.

◆ IPV6_IFLIST

#define IPV6_IFLIST   28

Definition at line 109 of file ws2ipdef.h.

◆ IPV6_JOIN_GROUP

#define IPV6_JOIN_GROUP   IPV6_ADD_MEMBERSHIP

Definition at line 98 of file ws2ipdef.h.

◆ IPV6_LEAVE_GROUP

#define IPV6_LEAVE_GROUP   IPV6_DROP_MEMBERSHIP

Definition at line 100 of file ws2ipdef.h.

◆ IPV6_MULTICAST_HOPS

#define IPV6_MULTICAST_HOPS   10

Definition at line 95 of file ws2ipdef.h.

◆ IPV6_MULTICAST_IF

#define IPV6_MULTICAST_IF   9

Definition at line 94 of file ws2ipdef.h.

◆ IPV6_MULTICAST_LOOP

#define IPV6_MULTICAST_LOOP   11

Definition at line 96 of file ws2ipdef.h.

◆ IPV6_PKTINFO

#define IPV6_PKTINFO   19

Definition at line 102 of file ws2ipdef.h.

◆ IPV6_PROTECTION_LEVEL

#define IPV6_PROTECTION_LEVEL   23

Definition at line 104 of file ws2ipdef.h.

◆ IPV6_RECVDSTADDR

#define IPV6_RECVDSTADDR   25

Definition at line 106 of file ws2ipdef.h.

◆ IPV6_RECVIF

#define IPV6_RECVIF   24

Definition at line 105 of file ws2ipdef.h.

◆ IPV6_RECVRTHDR

#define IPV6_RECVRTHDR   38

Definition at line 114 of file ws2ipdef.h.

◆ IPV6_RECVTCLASS

#define IPV6_RECVTCLASS   40

Definition at line 116 of file ws2ipdef.h.

◆ IPV6_RTHDR

#define IPV6_RTHDR   32

Definition at line 113 of file ws2ipdef.h.

◆ IPV6_TCLASS

#define IPV6_TCLASS   39

Definition at line 115 of file ws2ipdef.h.

◆ IPV6_UNICAST_HOPS

#define IPV6_UNICAST_HOPS   4

Definition at line 93 of file ws2ipdef.h.

◆ IPV6_UNICAST_IF

#define IPV6_UNICAST_IF   31

Definition at line 112 of file ws2ipdef.h.

◆ IPV6_V6ONLY

#define IPV6_V6ONLY   27

Definition at line 108 of file ws2ipdef.h.

◆ MCAST_BLOCK_SOURCE

#define MCAST_BLOCK_SOURCE   43

Definition at line 83 of file ws2ipdef.h.

◆ MCAST_JOIN_GROUP

#define MCAST_JOIN_GROUP   41

Definition at line 81 of file ws2ipdef.h.

◆ MCAST_JOIN_SOURCE_GROUP

#define MCAST_JOIN_SOURCE_GROUP   45

Definition at line 85 of file ws2ipdef.h.

◆ MCAST_LEAVE_GROUP

#define MCAST_LEAVE_GROUP   42

Definition at line 82 of file ws2ipdef.h.

◆ MCAST_LEAVE_SOURCE_GROUP

#define MCAST_LEAVE_SOURCE_GROUP   46

Definition at line 86 of file ws2ipdef.h.

◆ MCAST_UNBLOCK_SOURCE

#define MCAST_UNBLOCK_SOURCE   44

Definition at line 84 of file ws2ipdef.h.

◆ PROTECTION_LEVEL_DEFAULT

#define PROTECTION_LEVEL_DEFAULT   ((UINT)-1)

Definition at line 128 of file ws2ipdef.h.

◆ PROTECTION_LEVEL_EDGERESTRICTED

#define PROTECTION_LEVEL_EDGERESTRICTED   20

Definition at line 122 of file ws2ipdef.h.

◆ PROTECTION_LEVEL_RESTRICTED

#define PROTECTION_LEVEL_RESTRICTED   30

Definition at line 123 of file ws2ipdef.h.

◆ PROTECTION_LEVEL_UNRESTRICTED

#define PROTECTION_LEVEL_UNRESTRICTED   10

Definition at line 121 of file ws2ipdef.h.

◆ SIO_GET_INTERFACE_LIST

#define SIO_GET_INTERFACE_LIST   _IOR('t', 127, ULONG)

Definition at line 62 of file ws2ipdef.h.

◆ SIO_GET_INTERFACE_LIST_EX

#define SIO_GET_INTERFACE_LIST_EX   _IOR('t', 126, ULONG)

Definition at line 63 of file ws2ipdef.h.

◆ SIO_GET_MULTICAST_FILTER

#define SIO_GET_MULTICAST_FILTER   _IOW('t', 124 | IOC_IN, ULONG)

Definition at line 65 of file ws2ipdef.h.

◆ SIO_IDEAL_SEND_BACKLOG_CHANGE

#define SIO_IDEAL_SEND_BACKLOG_CHANGE   _IO('t', 122)

Definition at line 77 of file ws2ipdef.h.

◆ SIO_IDEAL_SEND_BACKLOG_QUERY

#define SIO_IDEAL_SEND_BACKLOG_QUERY   _IOR('t', 123, ULONG)

Definition at line 76 of file ws2ipdef.h.

◆ SIO_SET_MULTICAST_FILTER

#define SIO_SET_MULTICAST_FILTER   _IOW('t', 125, ULONG)

Definition at line 64 of file ws2ipdef.h.

◆ SIOCGIPMSFILTER

#define SIOCGIPMSFILTER   SIO_GET_MULTICAST_FILTER

Definition at line 67 of file ws2ipdef.h.

◆ SIOCGMSFILTER

#define SIOCGMSFILTER   _IOW('t', 127 | IOC_IN, ULONG)

Definition at line 70 of file ws2ipdef.h.

◆ SIOCSIPMSFILTER

#define SIOCSIPMSFILTER   SIO_SET_MULTICAST_FILTER

Definition at line 66 of file ws2ipdef.h.

◆ SIOCSMSFILTER

#define SIOCSMSFILTER   _IOW('t', 126, ULONG)

Definition at line 69 of file ws2ipdef.h.

◆ SS_PORT

#define SS_PORT (   ssp)    (((PSOCKADDR_IN)(ssp))->sin_port)

Definition at line 60 of file ws2ipdef.h.

◆ TCP_ATMARK

#define TCP_ATMARK   8

Definition at line 144 of file ws2ipdef.h.

◆ TCP_CONGESTION_ALGORITHM

#define TCP_CONGESTION_ALGORITHM   12

Definition at line 148 of file ws2ipdef.h.

◆ TCP_DELAY_FIN_ACK

#define TCP_DELAY_FIN_ACK   13

Definition at line 149 of file ws2ipdef.h.

◆ TCP_EXPEDITED_1122

#define TCP_EXPEDITED_1122   0x0002

Definition at line 138 of file ws2ipdef.h.

◆ TCP_KEEPALIVE

#define TCP_KEEPALIVE   3

Definition at line 139 of file ws2ipdef.h.

◆ TCP_MAXRT

#define TCP_MAXRT   5

Definition at line 141 of file ws2ipdef.h.

◆ TCP_MAXSEG

#define TCP_MAXSEG   4

Definition at line 140 of file ws2ipdef.h.

◆ TCP_NOSYNRETRIES

#define TCP_NOSYNRETRIES   9

Definition at line 145 of file ws2ipdef.h.

◆ TCP_NOURG

#define TCP_NOURG   7

Definition at line 143 of file ws2ipdef.h.

◆ TCP_OFFLOAD_NO_PREFERENCE

#define TCP_OFFLOAD_NO_PREFERENCE   0

Definition at line 134 of file ws2ipdef.h.

◆ TCP_OFFLOAD_NOT_PREFERRED

#define TCP_OFFLOAD_NOT_PREFERRED   1

Definition at line 135 of file ws2ipdef.h.

◆ TCP_OFFLOAD_PREFERENCE

#define TCP_OFFLOAD_PREFERENCE   11

Definition at line 147 of file ws2ipdef.h.

◆ TCP_OFFLOAD_PREFERRED

#define TCP_OFFLOAD_PREFERRED   2

Definition at line 136 of file ws2ipdef.h.

◆ TCP_STDURG

#define TCP_STDURG   6

Definition at line 142 of file ws2ipdef.h.

◆ TCP_TIMESTAMPS

#define TCP_TIMESTAMPS   10

Definition at line 146 of file ws2ipdef.h.

◆ WS2IPDEF_ASSERT

#define WS2IPDEF_ASSERT (   exp)    ((VOID) 0)

Definition at line 10 of file ws2ipdef.h.

◆ WS2TCPIP_INLINE

#define WS2TCPIP_INLINE   static inline

Definition at line 16 of file ws2ipdef.h.

Typedef Documentation

◆ GROUP_FILTER

◆ GROUP_REQ

◆ GROUP_SOURCE_REQ

◆ IN6_PKTINFO

◆ IN_PKTINFO

◆ INTERFACE_INFO

◆ INTERFACE_INFO_EX

◆ IP_MREQ

◆ IP_MREQ_SOURCE

◆ IP_MSFILTER

◆ IPV6_MREQ

◆ LPINTERFACE_INFO

◆ LPINTERFACE_INFO_EX

◆ LPSOCKADDR_IN6

Definition at line 201 of file ws2ipdef.h.

◆ LPSOCKADDR_IN6_LH

◆ LPSOCKADDR_IN6_W2KSP1

◆ MULTICAST_MODE_TYPE

◆ PGROUP_FILTER

◆ PGROUP_REQ

◆ PGROUP_SOURCE_REQ

◆ PIN6_PKTINFO

◆ PIN_PKTINFO

◆ PIP_MREQ

typedef struct ip_mreq * PIP_MREQ

◆ PIP_MREQ_SOURCE

◆ PIP_MSFILTER

◆ PIPV6_MREQ

◆ PSOCKADDR_IN6

Definition at line 200 of file ws2ipdef.h.

◆ PSOCKADDR_IN6_LH

◆ PSOCKADDR_IN6_PAIR

◆ PSOCKADDR_IN6_W2KSP1

◆ PSOCKADDR_INET

typedef union _SOCKADDR_INET * PSOCKADDR_INET

◆ sockaddr_gen

typedef union sockaddr_gen sockaddr_gen

◆ SOCKADDR_IN6

Definition at line 199 of file ws2ipdef.h.

◆ SOCKADDR_IN6_LH

◆ SOCKADDR_IN6_PAIR

◆ SOCKADDR_IN6_W2KSP1

◆ SOCKADDR_INET

Enumeration Type Documentation

◆ _MULTICAST_MODE_TYPE

Enumerator
MCAST_INCLUDE 
MCAST_EXCLUDE 

Definition at line 521 of file ws2ipdef.h.

521 {
522 MCAST_INCLUDE = 0,
@ MCAST_EXCLUDE
Definition: ws2ipdef.h:523
@ MCAST_INCLUDE
Definition: ws2ipdef.h:522
enum _MULTICAST_MODE_TYPE MULTICAST_MODE_TYPE

Function Documentation

◆ C_ASSERT() [1/2]

C_ASSERT ( sizeof(IN6_PKTINFO = =20)

◆ C_ASSERT() [2/2]

C_ASSERT ( sizeof(IN_PKTINFO = =8)

◆ IN6_ADDR_EQUAL()

WS2TCPIP_INLINE BOOLEAN IN6_ADDR_EQUAL ( CONST IN6_ADDR x,
CONST IN6_ADDR y 
)

Definition at line 285 of file ws2ipdef.h.

285 {
288
289 a = (__int64 UNALIGNED *)x;
290 b = (__int64 UNALIGNED *)y;
291 return (BOOLEAN)((a[1] == b[1]) && (a[0] == b[0]));
292}
unsigned char BOOLEAN
#define __int64
Definition: basetyps.h:16
GLint GLint GLint GLint GLint x
Definition: gl.h:1548
GLint GLint GLint GLint GLint GLint y
Definition: gl.h:1548
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204
#define a
Definition: ke_i.h:78
#define b
Definition: ke_i.h:79
#define UNALIGNED
Definition: pecoff.h:227

Referenced by IN6ADDR_ISEQUAL().

◆ IN6_IS_ADDR_ANYCAST()

WS2TCPIP_INLINE BOOLEAN IN6_IS_ADDR_ANYCAST ( CONST IN6_ADDR a)

Definition at line 357 of file ws2ipdef.h.

357 {
360}
WS2TCPIP_INLINE BOOLEAN IN6_IS_ADDR_SUBNET_RESERVED_ANYCAST(CONST IN6_ADDR *a)
Definition: ws2ipdef.h:347
WS2TCPIP_INLINE BOOLEAN IN6_IS_ADDR_SUBNET_ROUTER_ANYCAST(CONST IN6_ADDR *a)
Definition: ws2ipdef.h:337

◆ IN6_IS_ADDR_EUI64()

WS2TCPIP_INLINE BOOLEAN IN6_IS_ADDR_EUI64 ( CONST IN6_ADDR a)

Definition at line 330 of file ws2ipdef.h.

330 {
331 return (BOOLEAN)(((a->s6_bytes[0] & 0xe0) != 0) &&
333}
#define IN6_IS_ADDR_MULTICAST(a)
Definition: inet.h:130

Referenced by IN6_IS_ADDR_SUBNET_RESERVED_ANYCAST(), and IN6_IS_ADDR_SUBNET_ROUTER_ANYCAST().

◆ IN6_IS_ADDR_GLOBAL()

WS2TCPIP_INLINE BOOLEAN IN6_IS_ADDR_GLOBAL ( CONST IN6_ADDR a)

Definition at line 378 of file ws2ipdef.h.

378 {
379 ULONG High = (a->s6_bytes[0] & 0xf0);
380 return (BOOLEAN)((High != 0) && (High != 0xf0));
381}
@ High
Definition: strmini.h:378
uint32_t ULONG
Definition: typedefs.h:59

◆ IN6_IS_ADDR_LINKLOCAL()

WS2TCPIP_INLINE BOOLEAN IN6_IS_ADDR_LINKLOCAL ( CONST IN6_ADDR a)

Definition at line 364 of file ws2ipdef.h.

364 {
365 return (BOOLEAN)((a->s6_bytes[0] == 0xfe) &&
366 ((a->s6_bytes[1] & 0xc0) == 0x80));
367}

◆ IN6_IS_ADDR_LOOPBACK()

WS2TCPIP_INLINE BOOLEAN IN6_IS_ADDR_LOOPBACK ( CONST IN6_ADDR a)

Definition at line 311 of file ws2ipdef.h.

311 {
312 return (BOOLEAN)((a->s6_words[0] == 0) &&
313 (a->s6_words[1] == 0) &&
314 (a->s6_words[2] == 0) &&
315 (a->s6_words[3] == 0) &&
316 (a->s6_words[4] == 0) &&
317 (a->s6_words[5] == 0) &&
318 (a->s6_words[6] == 0) &&
319 (a->s6_words[7] == 0x0100));
320}

◆ IN6_IS_ADDR_MC_GLOBAL()

WS2TCPIP_INLINE BOOLEAN IN6_IS_ADDR_MC_GLOBAL ( CONST IN6_ADDR a)

Definition at line 449 of file ws2ipdef.h.

449 {
450 return (BOOLEAN)(IN6_IS_ADDR_MULTICAST(a) &&
451 ((a->s6_bytes[1] & 0xf) == 0xe));
452}

◆ IN6_IS_ADDR_MC_LINKLOCAL()

WS2TCPIP_INLINE BOOLEAN IN6_IS_ADDR_MC_LINKLOCAL ( CONST IN6_ADDR a)

Definition at line 428 of file ws2ipdef.h.

428 {
429 return (BOOLEAN)(IN6_IS_ADDR_MULTICAST(a) &&
430 ((a->s6_bytes[1] & 0xf) == 2));
431}

◆ IN6_IS_ADDR_MC_NODELOCAL()

WS2TCPIP_INLINE BOOLEAN IN6_IS_ADDR_MC_NODELOCAL ( CONST IN6_ADDR a)

Definition at line 421 of file ws2ipdef.h.

421 {
422 return (BOOLEAN)(IN6_IS_ADDR_MULTICAST(a) &&
423 ((a->s6_bytes[1] & 0xf) == 1));
424}

◆ IN6_IS_ADDR_MC_ORGLOCAL()

WS2TCPIP_INLINE BOOLEAN IN6_IS_ADDR_MC_ORGLOCAL ( CONST IN6_ADDR a)

Definition at line 442 of file ws2ipdef.h.

442 {
443 return (BOOLEAN)(IN6_IS_ADDR_MULTICAST(a) &&
444 ((a->s6_bytes[1] & 0xf) == 8));
445}

◆ IN6_IS_ADDR_MC_SITELOCAL()

WS2TCPIP_INLINE BOOLEAN IN6_IS_ADDR_MC_SITELOCAL ( CONST IN6_ADDR a)

Definition at line 435 of file ws2ipdef.h.

435 {
436 return (BOOLEAN)(IN6_IS_ADDR_MULTICAST(a) &&
437 ((a->s6_bytes[1] & 0xf) == 5));
438}

◆ IN6_IS_ADDR_MULTICAST()

WS2TCPIP_INLINE BOOLEAN IN6_IS_ADDR_MULTICAST ( CONST IN6_ADDR a)

Definition at line 324 of file ws2ipdef.h.

324 {
325 return (BOOLEAN)(a->s6_bytes[0] == 0xff);
326}

◆ IN6_IS_ADDR_SITELOCAL()

WS2TCPIP_INLINE BOOLEAN IN6_IS_ADDR_SITELOCAL ( CONST IN6_ADDR a)

Definition at line 371 of file ws2ipdef.h.

371 {
372 return (BOOLEAN)((a->s6_bytes[0] == 0xfe) &&
373 ((a->s6_bytes[1] & 0xc0) == 0xc0));
374}

◆ IN6_IS_ADDR_SUBNET_RESERVED_ANYCAST()

WS2TCPIP_INLINE BOOLEAN IN6_IS_ADDR_SUBNET_RESERVED_ANYCAST ( CONST IN6_ADDR a)

Definition at line 347 of file ws2ipdef.h.

347 {
348 return (BOOLEAN)(IN6_IS_ADDR_EUI64(a) &&
349 (a->s6_words[4] == 0xfffd) &&
350 (a->s6_words[5] == 0xffff) &&
351 (a->s6_words[6] == 0xffff) &&
352 ((a->s6_words[7] & 0x80ff) == 0x80ff));
353}
WS2TCPIP_INLINE BOOLEAN IN6_IS_ADDR_EUI64(CONST IN6_ADDR *a)
Definition: ws2ipdef.h:330

Referenced by IN6_IS_ADDR_ANYCAST().

◆ IN6_IS_ADDR_SUBNET_ROUTER_ANYCAST()

WS2TCPIP_INLINE BOOLEAN IN6_IS_ADDR_SUBNET_ROUTER_ANYCAST ( CONST IN6_ADDR a)

Definition at line 337 of file ws2ipdef.h.

337 {
338 return (BOOLEAN)(IN6_IS_ADDR_EUI64(a) &&
339 (a->s6_words[4] == 0) &&
340 (a->s6_words[5] == 0) &&
341 (a->s6_words[6] == 0) &&
342 (a->s6_words[7] == 0));
343}

Referenced by IN6_IS_ADDR_ANYCAST().

◆ IN6_IS_ADDR_UNSPECIFIED()

WS2TCPIP_INLINE BOOLEAN IN6_IS_ADDR_UNSPECIFIED ( CONST IN6_ADDR a)

Definition at line 298 of file ws2ipdef.h.

298 {
299 return (BOOLEAN)((a->s6_words[0] == 0) &&
300 (a->s6_words[1] == 0) &&
301 (a->s6_words[2] == 0) &&
302 (a->s6_words[3] == 0) &&
303 (a->s6_words[4] == 0) &&
304 (a->s6_words[5] == 0) &&
305 (a->s6_words[6] == 0) &&
306 (a->s6_words[7] == 0));
307}

◆ IN6_IS_ADDR_V4COMPAT()

WS2TCPIP_INLINE BOOLEAN IN6_IS_ADDR_V4COMPAT ( CONST IN6_ADDR a)

Definition at line 396 of file ws2ipdef.h.

396 {
397 return (BOOLEAN)((a->s6_words[0] == 0) &&
398 (a->s6_words[1] == 0) &&
399 (a->s6_words[2] == 0) &&
400 (a->s6_words[3] == 0) &&
401 (a->s6_words[4] == 0) &&
402 (a->s6_words[5] == 0) &&
403 !((a->s6_words[6] == 0) &&
404 (a->s6_addr[14] == 0) &&
405 ((a->s6_addr[15] == 0) || (a->s6_addr[15] == 1))));
406}

◆ IN6_IS_ADDR_V4MAPPED()

WS2TCPIP_INLINE BOOLEAN IN6_IS_ADDR_V4MAPPED ( CONST IN6_ADDR a)

Definition at line 385 of file ws2ipdef.h.

385 {
386 return (BOOLEAN)((a->s6_words[0] == 0) &&
387 (a->s6_words[1] == 0) &&
388 (a->s6_words[2] == 0) &&
389 (a->s6_words[3] == 0) &&
390 (a->s6_words[4] == 0) &&
391 (a->s6_words[5] == 0xffff));
392}

◆ IN6_IS_ADDR_V4TRANSLATED()

WS2TCPIP_INLINE BOOLEAN IN6_IS_ADDR_V4TRANSLATED ( CONST IN6_ADDR a)

Definition at line 410 of file ws2ipdef.h.

410 {
411 return (BOOLEAN)((a->s6_words[0] == 0) &&
412 (a->s6_words[1] == 0) &&
413 (a->s6_words[2] == 0) &&
414 (a->s6_words[3] == 0) &&
415 (a->s6_words[4] == 0xffff) &&
416 (a->s6_words[5] == 0));
417}

◆ IN6_SET_ADDR_LOOPBACK()

WS2TCPIP_INLINE VOID IN6_SET_ADDR_LOOPBACK ( PIN6_ADDR  a)

Definition at line 462 of file ws2ipdef.h.

462 {
463 memset(a->s6_bytes, 0, sizeof(IN6_ADDR));
464 a->s6_bytes[15] = 1;
465}
#define memset(x, y, z)
Definition: compat.h:39
Definition: inet.h:67

Referenced by IN6ADDR_SETLOOPBACK().

◆ IN6_SET_ADDR_UNSPECIFIED()

WS2TCPIP_INLINE VOID IN6_SET_ADDR_UNSPECIFIED ( PIN6_ADDR  a)

Definition at line 456 of file ws2ipdef.h.

456 {
457 memset(a->s6_bytes, 0, sizeof(IN6_ADDR));
458}

Referenced by IN6ADDR_SETANY().

◆ IN6ADDR_ISANY()

WS2TCPIP_INLINE BOOLEAN IN6ADDR_ISANY ( CONST SOCKADDR_IN6 a)

Definition at line 489 of file ws2ipdef.h.

489 {
490 WS2IPDEF_ASSERT(a->sin6_family == AF_INET6);
491 return IN6_IS_ADDR_UNSPECIFIED(&a->sin6_addr);
492}
#define IN6_IS_ADDR_UNSPECIFIED(a)
Definition: inet.h:128
#define AF_INET6
Definition: winsock.h:369
#define WS2IPDEF_ASSERT(exp)
Definition: ws2ipdef.h:10

◆ IN6ADDR_ISEQUAL()

WS2TCPIP_INLINE BOOLEAN IN6ADDR_ISEQUAL ( CONST SOCKADDR_IN6 a,
CONST SOCKADDR_IN6 b 
)

Definition at line 503 of file ws2ipdef.h.

503 {
504 WS2IPDEF_ASSERT(a->sin6_family == AF_INET6);
505 return (BOOLEAN)(a->sin6_scope_id == b->sin6_scope_id &&
506 IN6_ADDR_EQUAL(&a->sin6_addr, &b->sin6_addr));
507}
WS2TCPIP_INLINE BOOLEAN IN6_ADDR_EQUAL(CONST IN6_ADDR *x, CONST IN6_ADDR *y)
Definition: ws2ipdef.h:285

◆ IN6ADDR_ISLOOPBACK()

WS2TCPIP_INLINE BOOLEAN IN6ADDR_ISLOOPBACK ( CONST SOCKADDR_IN6 a)

Definition at line 496 of file ws2ipdef.h.

496 {
497 WS2IPDEF_ASSERT(a->sin6_family == AF_INET6);
498 return IN6_IS_ADDR_LOOPBACK(&a->sin6_addr);
499}
#define IN6_IS_ADDR_LOOPBACK(a)
Definition: inet.h:129

◆ IN6ADDR_ISUNSPECIFIED()

WS2TCPIP_INLINE BOOLEAN IN6ADDR_ISUNSPECIFIED ( CONST SOCKADDR_IN6 a)

Definition at line 511 of file ws2ipdef.h.

511 {
512 WS2IPDEF_ASSERT(a->sin6_family == AF_INET6);
513 return (BOOLEAN)(a->sin6_scope_id == 0 &&
514 IN6_IS_ADDR_UNSPECIFIED(&a->sin6_addr));
515}

◆ IN6ADDR_SETANY()

WS2TCPIP_INLINE VOID IN6ADDR_SETANY ( PSOCKADDR_IN6  a)

Definition at line 469 of file ws2ipdef.h.

469 {
470 a->sin6_family = AF_INET6;
471 a->sin6_port = 0;
472 a->sin6_flowinfo = 0;
473 IN6_SET_ADDR_UNSPECIFIED(&a->sin6_addr);
474 a->sin6_scope_id = 0;
475}
WS2TCPIP_INLINE VOID IN6_SET_ADDR_UNSPECIFIED(PIN6_ADDR a)
Definition: ws2ipdef.h:456

◆ IN6ADDR_SETLOOPBACK()

WS2TCPIP_INLINE VOID IN6ADDR_SETLOOPBACK ( PSOCKADDR_IN6  a)

Definition at line 479 of file ws2ipdef.h.

479 {
480 a->sin6_family = AF_INET6;
481 a->sin6_port = 0;
482 a->sin6_flowinfo = 0;
483 IN6_SET_ADDR_LOOPBACK(&a->sin6_addr);
484 a->sin6_scope_id = 0;
485}
WS2TCPIP_INLINE VOID IN6_SET_ADDR_LOOPBACK(PIN6_ADDR a)
Definition: ws2ipdef.h:462

Variable Documentation

◆ in4addr_alligmpv3routersonlink

CONST IN_ADDR in4addr_alligmpv3routersonlink
extern

◆ in4addr_allnodesonlink

CONST IN_ADDR in4addr_allnodesonlink
extern

◆ in4addr_allroutersonlink

CONST IN_ADDR in4addr_allroutersonlink
extern

◆ in4addr_allteredohostsonlink

CONST IN_ADDR in4addr_allteredohostsonlink
extern

◆ in4addr_any

CONST IN_ADDR in4addr_any
extern

◆ in4addr_broadcast

CONST IN_ADDR in4addr_broadcast
extern

◆ in4addr_linklocalprefix

CONST IN_ADDR in4addr_linklocalprefix
extern

◆ in4addr_loopback

CONST IN_ADDR in4addr_loopback
extern

◆ in4addr_multicastprefix

CONST IN_ADDR in4addr_multicastprefix
extern

◆ in6addr_6to4prefix

CONST IN6_ADDR in6addr_6to4prefix
extern

◆ in6addr_allmldv2routersonlink

CONST IN6_ADDR in6addr_allmldv2routersonlink
extern

◆ in6addr_allnodesonlink

CONST IN6_ADDR in6addr_allnodesonlink
extern

◆ in6addr_allnodesonnode

CONST IN6_ADDR in6addr_allnodesonnode
extern

◆ in6addr_allroutersonlink

CONST IN6_ADDR in6addr_allroutersonlink
extern

◆ in6addr_any

CONST IN6_ADDR in6addr_any
extern

◆ in6addr_linklocalprefix

CONST IN6_ADDR in6addr_linklocalprefix
extern

◆ in6addr_loopback

CONST IN6_ADDR in6addr_loopback
extern

◆ in6addr_multicastprefix

CONST IN6_ADDR in6addr_multicastprefix
extern

◆ in6addr_solicitednodemulticastprefix

CONST IN6_ADDR in6addr_solicitednodemulticastprefix
extern

◆ in6addr_teredoinitiallinklocaladdress

CONST IN6_ADDR in6addr_teredoinitiallinklocaladdress
extern

◆ in6addr_teredoprefix

CONST IN6_ADDR in6addr_teredoprefix
extern

◆ in6addr_teredoprefix_old

CONST IN6_ADDR in6addr_teredoprefix_old
extern

◆ in6addr_v4mappedprefix

CONST IN6_ADDR in6addr_v4mappedprefix
extern

◆ scopeid_unspecified

CONST SCOPE_ID scopeid_unspecified
extern