XenevaOS
Loading...
Searching...
No Matches
WiFi2.h
Go to the documentation of this file.
1
18#ifndef __EFI_WIFI2_PROTOCOL_H__
19#define __EFI_WIFI2_PROTOCOL_H__
20
21#define EFI_WIRELESS_MAC_CONNECTION_II_PROTOCOL_GUID \
22 { \
23 0x1b0fb9bf, 0x699d, 0x4fdd, { 0xa7, 0xc3, 0x25, 0x46, 0x68, 0x1b, 0xf6, 0x3b } \
24 }
25
27
37
41typedef enum {
42 //
43 // The connection establishment operation finished successfully.
44 //
46 //
47 // The connection was refused by the Network.
48 //
50 //
51 // The connection establishment operation failed (i.e, Network is not
52 // detected).
53 //
55 //
56 // The connection establishment operation was terminated on timeout.
57 //
59 //
60 // The connection establishment operation failed on other reason.
61 //
64
68typedef struct {
69 UINT8 Addr[6];
71
72#define EFI_MAX_SSID_LEN 32
73
77typedef struct {
78 //
79 // Length in bytes of the SSId. If zero, ignore SSId field.
80 //
82 //
83 // Specifies the service set identifier.
84 //
87
91typedef struct {
92 //
93 // The number of EFI_80211_SSID in SSIDList. If zero, SSIDList should be
94 // ignored.
95 //
97 //
98 // The SSIDList is a pointer to an array of EFI_80211_SSID instances. The
99 // number of entries is specified by NumOfSSID. The array should only include
100 // SSIDs of hidden networks. It is suggested that the caller inputs less than
101 // 10 elements in the SSIDList. It is the caller's responsibility to free
102 // this buffer.
103 //
104 EFI_80211_SSID SSIDList[1];
106
110typedef struct {
111 //
112 // Organization Unique Identifier, as defined in IEEE 802.11 standard,
113 // usually set to 00-0F-AC.
114 //
115 UINT8 Oui[3];
116 //
117 // Suites types, as defined in IEEE 802.11 standard.
118 //
121
125typedef struct {
126 //
127 // Indicates the number of AKM suite selectors that are contained in
128 // AKMSuiteList. If zero, the AKMSuiteList is ignored.
129 //
131 //
132 // A variable-length array of AKM suites, as defined in IEEE 802.11 standard,
133 // Table 8-101. The number of entries is specified by AKMSuiteCount.
134 //
137
141typedef struct {
142 //
143 // Indicates the number of cipher suites that are contained in
144 // CipherSuiteList. If zero, the CipherSuiteList is ignored.
145 //
147 //
148 // A variable-length array of cipher suites, as defined in IEEE 802.11
149 // standard, Table 8-99. The number of entries is specified by
150 // CipherSuiteCount.
151 //
152 EFI_80211_SUITE_SELECTOR CipherSuiteList[1];
154
158typedef struct {
159 //
160 // Specifies the type of the BSS.
161 //
163 //
164 // Specifies the SSID of the BSS.
165 //
167 //
168 // Pointer to the AKM suites supported in the wireless network.
169 //
171 //
172 // Pointer to the cipher suites supported in the wireless network.
173 //
176
180typedef struct {
181 //
182 // Specifies the found wireless network.
183 //
185 //
186 // Indicates the network quality as a value between 0 to 100, where 100
187 // indicates the highest network quality.
188 //
191
195typedef struct {
196 //
197 // The number of EFI_80211_NETWORK_DESCRIPTION in NetworkDesc. If zero,
198 // NetworkDesc should be ignored.
199 //
201 //
202 // The NetworkDesc is a pointer to an array of EFI_80211_NETWORK_DESCRIPTION
203 // instances. It is caller's responsibility to free this buffer.
204 //
207
211typedef struct {
212 //
213 // If the status code returned by GetNetworks() is EFI_SUCCESS, then this
214 // Event will be signaled after the Status field is updated by the EFI
215 // Wireless MAC Connection Protocol II driver. The type of Event must be
216 // EFI_NOTIFY_SIGNAL.
217 //
219 //
220 // Will be set to one of the following values:
221 // EFI_SUCCESS: The operation completed successfully.
222 // EFI_NOT_FOUND: Failed to find available wireless networks.
223 // EFI_DEVICE_ERROR: An unexpected network or system error occurred.
224 // EFI_ACCESS_DENIED: The operation is not completed due to some underlying
225 // hardware or software state.
226 // EFI_NOT_READY: The operation is started but not yet completed.
227 //
229 //
230 // Pointer to the input data for getting networks.
231 //
233 //
234 // Indicates the scan result. It is caller's responsibility to free this
235 // buffer.
236 //
239
243typedef struct {
244 //
245 // Specifies the wireless network to connect to.
246 //
248 //
249 // Specifies a time limit in seconds that is optionally present, after which
250 // the connection establishment procedure is terminated by the UNDI driver.
251 // This is an optional parameter and may be 0. Values of 5 seconds or higher
252 // are recommended.
253 //
256
260typedef struct {
261 //
262 // If the status code returned by ConnectNetwork() is EFI_SUCCESS, then this
263 // Event will be signaled after the Status field is updated by the EFI
264 // Wireless MAC Connection Protocol II driver. The type of Event must be
265 // EFI_NOTIFY_SIGNAL.
266 //
268 //
269 // Will be set to one of the following values:
270 // EFI_SUCCESS: The operation completed successfully.
271 // EFI_DEVICE_ERROR: An unexpected network or system error occurred.
272 // EFI_ACCESS_DENIED: The operation is not completed due to some underlying
273 // hardware or software state.
274 // EFI_NOT_READY: The operation is started but not yet completed.
275 //
277 //
278 // Pointer to the connection data.
279 //
281 //
282 // Indicates the connection state.
283 //
286
290typedef struct {
291 //
292 // If the status code returned by DisconnectNetwork() is EFI_SUCCESS, then
293 // this Event will be signaled after the Status field is updated by the EFI
294 // Wireless MAC Connection Protocol II driver. The type of Event must be
295 // EFI_NOTIFY_SIGNAL.
296 //
298 //
299 // Will be set to one of the following values:
300 // EFI_SUCCESS: The operation completed successfully
301 // EFI_DEVICE_ERROR: An unexpected network or system error occurred.
302 // EFI_ACCESS_DENIED: The operation is not completed due to some underlying
303 // hardware or software state.
304 //
307
332typedef
337 );
338
363typedef
368 );
369
392typedef
397 );
398
410
412
413#endif
#define EFIAPI
Definition ProcessorBind.h:172
unsigned int UINT32
Definition ProcessorBind.h:102
#define IN
Definition Base.h:347
RETURN_STATUS EFI_STATUS
Definition UefiBaseType.h:33
VOID * EFI_EVENT
Definition UefiBaseType.h:41
EFI_STATUS(EFIAPI * EFI_WIRELESS_MAC_CONNECTION_II_DISCONNECT_NETWORK)(IN EFI_WIRELESS_MAC_CONNECTION_II_PROTOCOL *This, IN EFI_80211_DISCONNECT_NETWORK_TOKEN *Token)
Definition WiFi2.h:394
EFI_STATUS(EFIAPI * EFI_WIRELESS_MAC_CONNECTION_II_CONNECT_NETWORK)(IN EFI_WIRELESS_MAC_CONNECTION_II_PROTOCOL *This, IN EFI_80211_CONNECT_NETWORK_TOKEN *Token)
Definition WiFi2.h:365
EFI_80211_BSS_TYPE
Definition WiFi2.h:31
@ IeeeMeshBSS
Definition WiFi2.h:34
@ IeeeIndependentBSS
Definition WiFi2.h:33
@ IeeeAnyBss
Definition WiFi2.h:35
@ IeeeInfrastructureBSS
Definition WiFi2.h:32
#define EFI_MAX_SSID_LEN
Definition WiFi2.h:72
EFI_GUID gEfiWiFi2ProtocolGuid
EFI_STATUS(EFIAPI * EFI_WIRELESS_MAC_CONNECTION_II_GET_NETWORKS)(IN EFI_WIRELESS_MAC_CONNECTION_II_PROTOCOL *This, IN EFI_80211_GET_NETWORKS_TOKEN *Token)
Definition WiFi2.h:334
EFI_80211_CONNECT_NETWORK_RESULT_CODE
Definition WiFi2.h:41
@ ConnectFailureTimeout
Definition WiFi2.h:58
@ ConnectFailed
Definition WiFi2.h:54
@ ConnectFailedReasonUnspecified
Definition WiFi2.h:62
@ ConnectRefused
Definition WiFi2.h:49
@ ConnectSuccess
Definition WiFi2.h:45
unsigned short UINT16
Definition actypes.h:237
unsigned char UINT8
Definition actypes.h:236
Definition WiFi2.h:125
UINT16 AKMSuiteCount
Definition WiFi2.h:130
Definition WiFi2.h:141
UINT16 CipherSuiteCount
Definition WiFi2.h:146
Definition WiFi2.h:243
UINT32 FailureTimeout
Definition WiFi2.h:254
EFI_80211_NETWORK * Network
Definition WiFi2.h:247
Definition WiFi2.h:260
EFI_EVENT Event
Definition WiFi2.h:267
EFI_STATUS Status
Definition WiFi2.h:276
EFI_80211_CONNECT_NETWORK_RESULT_CODE ResultCode
Definition WiFi2.h:284
EFI_80211_CONNECT_NETWORK_DATA * Data
Definition WiFi2.h:280
EFI_STATUS Status
Definition WiFi2.h:305
EFI_EVENT Event
Definition WiFi2.h:297
Definition WiFi2.h:91
UINT32 NumOfSSID
Definition WiFi2.h:96
Definition WiFi2.h:195
UINT8 NumOfNetworkDesc
Definition WiFi2.h:200
Definition WiFi2.h:211
EFI_EVENT Event
Definition WiFi2.h:218
EFI_80211_GET_NETWORKS_RESULT * Result
Definition WiFi2.h:237
EFI_80211_GET_NETWORKS_DATA * Data
Definition WiFi2.h:232
EFI_STATUS Status
Definition WiFi2.h:228
Definition WiFi2.h:68
Definition WiFi2.h:180
EFI_80211_NETWORK Network
Definition WiFi2.h:184
UINT8 NetworkQuality
Definition WiFi2.h:189
Definition WiFi2.h:158
EFI_80211_AKM_SUITE_SELECTOR * AKMSuite
Definition WiFi2.h:170
EFI_80211_CIPHER_SUITE_SELECTOR * CipherSuite
Definition WiFi2.h:174
EFI_80211_BSS_TYPE BSSType
Definition WiFi2.h:162
EFI_80211_SSID SSId
Definition WiFi2.h:166
Definition WiFi2.h:77
UINT8 SSIdLen
Definition WiFi2.h:81
Definition WiFi2.h:110
UINT8 SuiteType
Definition WiFi2.h:119
Definition Base.h:281
EFI_WIRELESS_MAC_CONNECTION_II_CONNECT_NETWORK ConnectNetwork
Definition WiFi2.h:407
EFI_WIRELESS_MAC_CONNECTION_II_GET_NETWORKS GetNetworks
Definition WiFi2.h:406
EFI_WIRELESS_MAC_CONNECTION_II_DISCONNECT_NETWORK DisconnectNetwork
Definition WiFi2.h:408