ViewVC Help
View File | Revision Log | View Changeset | Root Listing
root/Oni2/Daodan/MSYS2/mingw32/i686-w64-mingw32/include/nldef.h
Revision: 1166
Committed: Tue Oct 26 14:22:36 2021 UTC (4 years ago) by rossy
Content type: text/x-chdr
File size: 4725 byte(s)
Log Message:
Daodan: Replace MinGW build env with an up-to-date MSYS2 env

File Contents

# Content
1 /**
2 * This file is part of the mingw-w64 runtime package.
3 * No warranty is given; refer to the file DISCLAIMER within this package.
4 */
5
6 #ifndef _NLDEF_
7 #define _NLDEF_
8 #include <winapifamily.h>
9
10 #if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP) || _WIN32_WINNT >= 0x0A00
11
12 typedef enum {
13 NldsInvalid,
14 NldsTentative,
15 NldsDuplicate,
16 NldsDeprecated,
17 NldsPreferred,
18 IpDadStateInvalid = 0,
19 IpDadStateTentative,
20 IpDadStateDuplicate,
21 IpDadStateDeprecated,
22 IpDadStatePreferred,
23 } NL_DAD_STATE;
24
25 #define MAKE_ROUTE_PROTOCOL(N, V) MIB_IPPROTO_ ## N = V, PROTO_IP_ ## N = V
26
27 typedef enum {
28 RouteProtocolOther = 1,
29 RouteProtocolLocal = 2,
30 RouteProtocolNetMgmt = 3,
31 RouteProtocolIcmp = 4,
32 RouteProtocolEgp = 5,
33 RouteProtocolGgp = 6,
34 RouteProtocolHello = 7,
35 RouteProtocolRip = 8,
36 RouteProtocolIsIs = 9,
37 RouteProtocolEsIs = 10,
38 RouteProtocolCisco = 11,
39 RouteProtocolBbn = 12,
40 RouteProtocolOspf = 13,
41 RouteProtocolBgp = 14,
42
43 MAKE_ROUTE_PROTOCOL (OTHER, 1),
44 MAKE_ROUTE_PROTOCOL (LOCAL, 2),
45 MAKE_ROUTE_PROTOCOL (NETMGMT, 3),
46 MAKE_ROUTE_PROTOCOL (ICMP, 4),
47 MAKE_ROUTE_PROTOCOL (EGP, 5),
48 MAKE_ROUTE_PROTOCOL (GGP, 6),
49 MAKE_ROUTE_PROTOCOL (HELLO, 7),
50 MAKE_ROUTE_PROTOCOL (RIP, 8),
51 MAKE_ROUTE_PROTOCOL (IS_IS, 9),
52 MAKE_ROUTE_PROTOCOL (ES_IS, 10),
53 MAKE_ROUTE_PROTOCOL (CISCO, 11),
54 MAKE_ROUTE_PROTOCOL (BBN, 12),
55 MAKE_ROUTE_PROTOCOL (OSPF, 13),
56 MAKE_ROUTE_PROTOCOL (BGP, 14),
57 MAKE_ROUTE_PROTOCOL (NT_AUTOSTATIC, 10002),
58 MAKE_ROUTE_PROTOCOL (NT_STATIC, 10006),
59 MAKE_ROUTE_PROTOCOL (NT_STATIC_NON_DOD, 10007)
60 } NL_ROUTE_PROTOCOL,*PNL_ROUTE_PROTOCOL;
61
62 typedef enum {
63 IpPrefixOriginOther = 0,
64 IpPrefixOriginManual,
65 IpPrefixOriginWellKnown,
66 IpPrefixOriginDhcp,
67 IpPrefixOriginRouterAdvertisement,
68 IpPrefixOriginUnchanged = 16
69 } NL_PREFIX_ORIGIN;
70
71 typedef enum {
72 NlsoOther = 0,
73 NlsoManual,
74 NlsoWellKnown,
75 NlsoDhcp,
76 NlsoLinkLayerAddress,
77 NlsoRandom,
78 IpSuffixOriginOther = 0,
79 IpSuffixOriginManual,
80 IpSuffixOriginWellKnown,
81 IpSuffixOriginDhcp,
82 IpSuffixOriginLinkLayerAddress,
83 IpSuffixOriginRandom,
84 IpSuffixOriginUnchanged = 16
85 } NL_SUFFIX_ORIGIN;
86
87 typedef enum {
88 NlatUnspecified,
89 NlatUnicast,
90 NlatAnycast,
91 NlatMulticast,
92 NlatBroadcast,
93 NlatInvalid
94 } NL_ADDRESS_TYPE, *PNL_ADDRESS_TYPE;
95
96 typedef enum _NL_ROUTE_ORIGIN {
97 NlroManual,
98 NlroWellKnown,
99 NlroDHCP,
100 NlroRouterAdvertisement,
101 Nlro6to4,
102 } NL_ROUTE_ORIGIN, *PNL_ROUTE_ORIGIN;
103
104 typedef enum _NL_NEIGHBOR_STATE {
105 NlnsUnreachable,
106 NlnsIncomplete,
107 NlnsProbe,
108 NlnsDelay,
109 NlnsStale,
110 NlnsReachable,
111 NlnsPermanent,
112 NlnsMaximum,
113 } NL_NEIGHBOR_STATE, *PNL_NEIGHBOR_STATE;
114
115 typedef enum _NL_LINK_LOCAL_ADDRESS_BEHAVIOR {
116 LinkLocalAlwaysOff = 0,
117 LinkLocalDelayed,
118 LinkLocalAlwaysOn,
119 LinkLocalUnchanged = -1
120 } NL_LINK_LOCAL_ADDRESS_BEHAVIOR;
121
122 typedef enum _NL_ROUTER_DISCOVERY_BEHAVIOR {
123 RouterDiscoveryDisabled = 0,
124 RouterDiscoveryEnabled,
125 RouterDiscoveryDhcp,
126 RouterDiscoveryUnchanged = -1
127 } NL_ROUTER_DISCOVERY_BEHAVIOR;
128
129 typedef enum _NL_BANDWIDTH_FLAG {
130 NlbwDisabled = 0,
131 NlbwEnabled,
132 NlbwUnchanged = -1
133 } NL_BANDWIDTH_FLAG, *PNL_BANDWIDTH_FLAG;
134
135 typedef enum _NL_INTERFACE_NETWORK_CATEGORY_STATE {
136 NlincCategoryUnknown = 0,
137 NlincPublic = 1,
138 NlincPrivate = 2,
139 NlincDomainAuthenticated = 3,
140 NlincCategoryStateMax
141 } NL_INTERFACE_NETWORK_CATEGORY_STATE, *PNL_INTERFACE_NETWORK_CATEGORY_STATE;
142
143 typedef struct _NL_INTERFACE_OFFLOAD_ROD {
144 BOOLEAN NlChecksumSupported : 1;
145 BOOLEAN NlOptionsSupported : 1;
146 BOOLEAN TlDatagramChecksumSupported : 1;
147 BOOLEAN TlStreamChecksumSupported : 1;
148 BOOLEAN TlStreamOptionsSupported : 1;
149 BOOLEAN FastPathCompatible : 1;
150 BOOLEAN TlLargeSendOffloadSupported : 1;
151 BOOLEAN TlGiantSendOffloadSupported : 1;
152 } NL_INTERFACE_OFFLOAD_ROD, *PNL_INTERFACE_OFFLOAD_ROD;
153
154 typedef struct _NL_PATH_BANDWIDTH_ROD {
155 ULONG64 Bandwidth;
156 ULONG64 Instability;
157 BOOLEAN BandwidthPeaked;
158 } NL_PATH_BANDWIDTH_ROD, *PNL_PATH_BANDWIDTH_ROD;
159
160 typedef enum _NL_NETWORK_CATEGORY {
161 NetworkCategoryPublic,
162 NetworkCategoryPrivate,
163 NetworkCategoryDomainAuthenticated,
164 NetworkCategoryUnchanged = -1,
165 NetworkCategoryUnknown = -1
166 } NL_NETWORK_CATEGORY,*PNL_NETWORK_CATEGORY;
167
168 typedef struct _NL_BANDWIDTH_INFORMATION {
169 ULONG64 Bandwidth;
170 ULONG64 Instability;
171 BOOLEAN BandwidthPeaked;
172 } NL_BANDWIDTH_INFORMATION, *PNL_BANDWIDTH_INFORMATION;
173
174 #define NlpoOther IpPrefixOriginOther
175 #define NlpoManual IpPrefixOriginManual
176 #define NlpoWellKnown IpPrefixOriginWellKnown
177 #define NlpoDhcp IpPrefixOriginDhcp
178 #define NlpoRouterAdvertisement IpPrefixOriginRouterAdvertisement
179
180 #define NL_MAX_METRIC_COMPONENT ((((ULONG) 1) << 31) - 1)
181
182 #define NET_IF_CURRENT_SESSION ((ULONG)-1)
183
184 #endif
185
186 #endif