source: Daodan/MSYS2/mingw32/i686-w64-mingw32/include/eaptypes.h

Last change on this file was 1166, checked in by rossy, 3 years ago

Daodan: Replace MinGW build env with an up-to-date MSYS2 env

File size: 10.1 KB
Line 
1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6#ifndef _INC_EAPTYPES
7#define _INC_EAPTYPES
8
9#ifdef __cplusplus
10extern "C" {
11#endif
12
13
14typedef DWORD EAP_SESSIONID;
15typedef void* EAP_SESSION_HANDLE;
16
17#define EAP_FLAG_Reserved1 0x00000001
18#define EAP_FLAG_NON_INTERACTIVE 0x00000002
19#define EAP_FLAG_LOGON 0x00000004
20#define EAP_FLAG_PREVIEW 0x00000008
21#define EAP_FLAG_Reserved2 0x00000010
22#define EAP_FLAG_MACHINE_AUTH 0x00000020
23#define EAP_FLAG_GUEST_ACCESS 0x00000040
24#define EAP_FLAG_Reserved3 0x00000080
25#define EAP_FLAG_Reserved4 0x00000100
26#define EAP_FLAG_RESUME_FROM_HIBERNATE 0x00000200
27#define EAP_FLAG_Reserved5 0x00000400
28#define EAP_FLAG_Reserved6 0x00000800
29#define EAP_FLAG_FULL_AUTH 0x00001000
30#define EAP_FLAG_PREFER_ALT_CREDENTIALS 0x00002000
31#define EAP_FLAG_Reserved7 0x00004000
32#define EAP_PEER_FLAG_HEALTH_STATE_CHANGE 0x00008000
33#define EAP_FLAG_SUPRESS_UI 0x00010000
34#define EAP_FLAG_PRE_LOGON 0x00020000
35#define EAP_FLAG_USER_AUTH 0x00040000
36#define EAP_FLAG_CONFG_READONLY 0x00080000
37#define EAP_FLAG_Reserved8 0x00100000
38
39typedef enum _EAP_ATTRIBUTE_TYPE {
40 eatMinimum = 0,
41 eatUserName = 1,
42 eatUserPassword = 2,
43 eatMD5CHAPPassword = 3,
44 eatNASIPAddress = 4,
45 eatNASport = 5,
46 eatServiceType = 6,
47 eatFramedProtocol = 7,
48 eatFramedIPAddress = 8,
49 eatFramedIPNetmask = 9,
50 eatFramedRouting = 10,
51 eatFilterId = 11,
52 eatFramedMTU = 12,
53 eatFramedCompression = 13,
54 eatLoginIPHost = 14,
55 eatLoginService = 15,
56 eatLoginTCPPort = 16,
57 eatUnassigned17 = 17,
58 eatReplyMessage = 18,
59 eatCallbackNumber = 19,
60 eatCallbackId = 20,
61 eatUnassigned21 = 21,
62 eatFramedRoute = 22,
63 eatFramedIPXNetwork = 23,
64 eatState = 24,
65 eatClass = 25,
66 eatVendorSpecific = 26,
67 eatSessionTimeout = 27,
68 eatIdleTimeout = 28,
69 eatTerminationAction = 29,
70 eatCalledStationId = 30,
71 eatCallingStationId = 31,
72 eatNASIdentifier = 32,
73 eatProxyState = 33,
74 eatLoginLATService = 34,
75 eatLoginLATNode = 35,
76 eatLoginLATGroup = 36,
77 eatFramedAppleTalkLink = 37,
78 eatFramedAppleTalkNetwork = 38,
79 eatFramedAppleTalkZone = 39,
80 eatAcctStatusType = 40,
81 eatAcctDelayTime = 41,
82 eatAcctInputOctets = 42,
83 eatAcctOutputOctets = 43,
84 eatAcctSessionId = 44,
85 eatAcctAuthentic = 45,
86 eatAcctSessionTime = 46,
87 eatAcctInputPackets = 47,
88 eatAcctOutputPackets = 48,
89 eatAcctTerminateCause = 49,
90 eatAcctMultiSessionId = 50,
91 eatAcctLinkCount = 51,
92 eatAcctEventTimeStamp = 55,
93 eatMD5CHAPChallenge = 60,
94 eatNASPortType = 61,
95 eatPortLimit = 62,
96 eatLoginLATPort = 63,
97 eatTunnelType = 64,
98 eatTunnelMediumType = 65,
99 eatTunnelClientEndpoint = 66,
100 eatTunnelServerEndpoint = 67,
101 eatARAPPassword = 70,
102 eatARAPFeatures = 71,
103 eatARAPZoneAccess = 72,
104 eatARAPSecurity = 73,
105 eatARAPSecurityData = 74,
106 eatPasswordRetry = 75,
107 eatPrompt = 76,
108 eatConnectInfo = 77,
109 eatConfigurationToken = 78,
110 eatEAPMessage = 79,
111 eatSignature = 80,
112 eatARAPChallengeResponse = 84,
113 eatAcctInterimInterval = 85,
114 eatNASIPv6Address = 95,
115 eatFramedInterfaceId = 96,
116 eatFramedIPv6Prefix = 97,
117 eatLoginIPv6Host = 98,
118 eatFramedIPv6Route = 99,
119 eatFramedIPv6Pool = 100,
120 eatARAPGuestLogon = 8096,
121 eatCertificateOID = 8097,
122 eatEAPConfiguration = 8098,
123 eatPEAPEmbeddedEAPTypeId = 8099,
124 eatPEAPFastRoamedSession = 8100,
125 eatEAPTLV = 8102,
126 eatCredentialsChanged = 8103,
127 eatInnerEapMethodType = 8104,
128 eatClearTextPassword = 8107,
129 eatQuarantineSoH = 8150,
130 eatPeerId = 9000,
131 eatServerId = 9001,
132 eatMethodId = 9002,
133 eatEMSK = 9003,
134 eatSessionId = 9004,
135 eatReserved = 0xFFFFFFFF
136} EAP_ATTRIBUTE_TYPE, EapAttributeType;
137
138typedef struct _EAP_ATTRIBUTE {
139 EAP_ATTRIBUTE_TYPE eapType;
140 DWORD dwLength;
141 BYTE * pValue;
142} EAP_ATTRIBUTE, EapAttribute;
143
144typedef struct _EAP_ATTRIBUTES {
145 DWORD dwNumberOfAttributes;
146 EAP_ATTRIBUTE *pAttribs;
147} EAP_ATTRIBUTES, EapAttributes;
148
149typedef struct _EAP_TYPE {
150 BYTE type;
151 DWORD dwVendorId;
152 DWORD dwVendorType;
153} EAP_TYPE;
154
155typedef struct _EAP_METHOD_TYPE {
156 EAP_TYPE eapType;
157 DWORD dwAuthorId;
158} EAP_METHOD_TYPE;
159
160typedef struct _EAP_ERROR {
161 DWORD dwWinError;
162 EAP_METHOD_TYPE type;
163 DWORD dwReasonCode;
164 GUID rootCauseGuid;
165 GUID repairGuid;
166 GUID helpLinkGuid;
167 LPWSTR pRootCauseString;
168 LPWSTR pRepairString;
169} EAP_ERROR;
170
171typedef enum _EAP_CONFIG_INPUT_FIELD_TYPE {
172 EapConfigInputUsername = 0,
173 EapConfigInputPassword,
174 EapConfigInputNetworkUsername,
175 EapConfigInputNetworkPassword,
176 EapConfigInputPin,
177 EapConfigInputPSK,
178 EapConfigInputEdit,
179 EapConfigSmartCardUsername,
180 EapConfigSmartCardError
181} EAP_CONFIG_INPUT_FIELD_TYPE;
182
183typedef enum _EAP_INTERACTIVE_UI_DATA_TYPE {
184 EapCredReq,
185 EapCredResp,
186 EapCredExpiryReq,
187 EapCredExpiryResp
188} EAP_INTERACTIVE_UI_DATA_TYPE;
189
190#define EAP_UI_INPUT_FIELD_PROPS_DEFAULT 0x00000000
191#define EAP_CONFIG_INPUT_FIELD_PROPS_DEFAULT 0x00000000
192#define EAP_UI_INPUT_FIELD_PROPS_NON_DISPLAYABLE 0x00000001
193#define EAP_CONFIG_INPUT_FIELD_PROPS_NON_DISPLAYABLE 0x00000001
194#define EAP_UI_INPUT_FIELD_PROPS_NON_PERSIST 0x00000002
195#define EAP_CONFIG_INPUT_FIELD_PROPS_NON_PERSIST 0x00000002
196#define EAP_UI_INPUT_FIELD_PROPS_READ_ONLY 0x00000004
197
198#define MAX_EAP_CONFIG_INPUT_FIELD_LENGTH 256
199
200#define MAX_EAP_CONFIG_INPUT_FIELD_VALUE_LENGTH 1024
201
202typedef struct _EAP_CONFIG_INPUT_FIELD_DATA {
203 DWORD dwSize;
204 EAP_CONFIG_INPUT_FIELD_TYPE Type;
205 DWORD dwFlagProps;
206 LPWSTR pwszLabel;
207 LPWSTR pwszData;
208 DWORD dwMinDataLength;
209 DWORD dwMaxDataLength;
210} EAP_CONFIG_INPUT_FIELD_DATA, *PEAP_CONFIG_INPUT_FIELD_DATA;
211
212#define EAP_CREDENTIAL_VERSION 1
213
214typedef struct _EAP_CONFIG_INPUT_FIELD_ARRAY {
215 DWORD dwVersion;
216 DWORD dwNumberOfFields;
217 DWORD dwSize;
218 EAP_CONFIG_INPUT_FIELD_DATA *pFields;
219} EAP_CONFIG_INPUT_FIELD_ARRAY, *PEAP_CONFIG_INPUT_FIELD_ARRAY;
220
221typedef EAP_CONFIG_INPUT_FIELD_ARRAY EAP_CRED_REQ;
222typedef EAP_CONFIG_INPUT_FIELD_ARRAY EAP_CRED_RESP;
223typedef struct _EAP_CRED_EXPIRY_REQ EAP_CRED_EXPIRY_REQ;
224
225typedef union _EAP_UI_DATA_FORMAT {
226 EAP_CRED_REQ * credData;
227 EAP_CRED_EXPIRY_REQ *credExpiryData;
228} EAP_UI_DATA_FORMAT;
229
230typedef struct _EAP_INTERACTIVE_UI_DATA {
231 DWORD dwVersion;
232 DWORD dwSize;
233 EAP_INTERACTIVE_UI_DATA_TYPE dwDataType;
234 DWORD cbUiData;
235 EAP_UI_DATA_FORMAT pbUiData;
236} EAP_INTERACTIVE_UI_DATA;
237
238#define eapPropCipherSuiteNegotiation 0x00000001
239#define eapPropMutualAuth 0x00000002
240#define eapPropIntegrity 0x00000004
241#define eapPropReplayProtection 0x00000008
242#define eapPropConfidentiality 0x00000010
243#define eapPropKeyDerivation 0x00000020
244#define eapPropKeyStrength64 0x00000040
245#define eapPropKeyStrength128 0x00000080
246#define eapPropKeyStrength256 0x00000100
247#define eapPropKeyStrength512 0x00000200
248#define eapPropKeyStrength1024 0x00000400
249#define eapPropDictionaryAttackResistance 0x00000800
250#define eapPropFastReconnect 0x00001000
251#define eapPropCryptoBinding 0x00002000
252#define eapPropSessionIndependence 0x00004000
253#define eapPropFragmentation 0x00008000
254#define eapPropChannelBinding 0x00010000
255#define eapPropNap 0x00020000
256#define eapPropStandalone 0x00040000
257#define eapPropMppeEncryption 0x00080000
258#define eapPropTunnelMethod 0x00100000
259#define eapPropSupportsConfig 0x00200000
260#define eapPropCertifiedMethod 0x00400000
261#if (_WIN32_WINNT >= 0x0601)
262#define eapPropmachineAuth 0x01000000
263#define eapPropUserAuth 0x02000000
264#define eapPropIdentityPrivacy 0x04000000
265#define eapPropMethodChaining 0x08000000
266#define eapPropSharedStateEquivalence 0x10000000
267#endif /*(_WIN32_WINNT >= 0x0601)*/
268#define eapPropReserved 0x20000000
269
270typedef struct _EAP_METHOD_INFO {
271 EAP_METHOD_TYPE eapType;
272 LPWSTR pwszAuthorName;
273 LPWSTR pwszFriendlyName;
274 DWORD eapProperties;
275 struct _EAP_METHOD_INFO *pInnerMethodInfo;
276} EAP_METHOD_INFO;
277
278typedef struct _EAP_METHOD_INFO_ARRAY {
279 DWORD dwNumberOfMethods;
280 EAP_METHOD_INFO *pEapMethods;
281} EAP_METHOD_INFO_ARRAY, *PEAP_METHOD_INFO_ARRAY;
282
283typedef struct _EAP_METHOD_INFO_EX {
284 EAP_METHOD_TYPE eapType;
285 LPWSTR pwszAuthorName;
286 LPWSTR pwszFriendlyName;
287 DWORD eapProperties;
288 struct _EAP_METHOD_INFO_ARRAY_EX *pInnerMethodInfoArray;
289} EAP_METHOD_INFO_EX;
290
291typedef struct _EAP_METHOD_INFO_ARRAY_EX {
292 DWORD dwNumberOfMethods;
293 EAP_METHOD_INFO_EX *pEapMethods;
294} EAP_METHOD_INFO_ARRAY_EX, *PEAP_METHOD_INFO_ARRAY_EX;
295
296typedef struct _EAP_CRED_EXPIRY_REQ {
297 EAP_CONFIG_INPUT_FIELD_ARRAY curCreds;
298 EAP_CONFIG_INPUT_FIELD_ARRAY newCreds;
299} /* EAP_CRED_EXPIRY_REQ, */ *PEAP_CRED_EXPIRY_REQ;
300
301typedef struct _EAP_CRED_EXPIRY_RESP {
302 EAP_CONFIG_INPUT_FIELD_ARRAY curCreds;
303 EAP_CONFIG_INPUT_FIELD_ARRAY newCreds;
304} EAP_CRED_EXPIRY_RESP, *PEAP_CRED_EXPIRY_RESP;
305
306#ifdef __cplusplus
307}
308#endif
309
310#endif /*_INC_EAPTYPES*/
Note: See TracBrowser for help on using the repository browser.