Changeset 99404 in vbox for trunk/src/VBox/Devices/EFI/FirmwareNew/NetworkPkg/WifiConnectionManagerDxe/WifiConnectionMgrDxe.h
- Timestamp:
- Apr 14, 2023 3:17:44 PM (22 months ago)
- Location:
- trunk/src/VBox/Devices/EFI/FirmwareNew
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Devices/EFI/FirmwareNew
-
Property svn:mergeinfo
changed from (toggle deleted branches)
to (toggle deleted branches)/vendor/edk2/current 103735-103757,103769-103776,129194-145445 /vendor/edk2/current 103735-103757,103769-103776,129194-156846
-
Property svn:mergeinfo
changed from (toggle deleted branches)
-
trunk/src/VBox/Devices/EFI/FirmwareNew/NetworkPkg/WifiConnectionManagerDxe/WifiConnectionMgrDxe.h
r80721 r99404 2 2 The miscellaneous structure definitions for WiFi connection driver. 3 3 4 Copyright (c) 2019 , Intel Corporation. All rights reserved.<BR>4 Copyright (c) 2019 - 2022, Intel Corporation. All rights reserved.<BR> 5 5 6 6 SPDX-License-Identifier: BSD-2-Clause-Patent … … 48 48 #include <Protocol/SimpleFileSystem.h> 49 49 #include <Protocol/EapConfiguration.h> 50 #include <Protocol/WiFiProfileSyncProtocol.h> 50 51 51 52 // … … 74 75 #define WIFI_MGR_DXE_VERSION 0xb 75 76 76 #define OUI_IEEE_80211I 0xAC0F00 77 #define OUI_IEEE_80211I 0xAC0F00 78 #define MAX_WIFI_CONNETION_ATTEMPTS 3 77 79 78 80 typedef enum { 79 81 Ieee80211PairwiseCipherSuiteUseGroupCipherSuite = 0, 80 Ieee80211PairwiseCipherSuiteWEP40 = 1, 81 Ieee80211PairwiseCipherSuiteTKIP = 2, 82 Ieee80211PairwiseCipherSuiteCCMP = 4, 83 Ieee80211PairwiseCipherSuiteWEP104 = 5, 84 Ieee80211PairwiseCipherSuiteBIP = 6, 85 //... 82 Ieee80211PairwiseCipherSuiteWEP40 = 1, 83 Ieee80211PairwiseCipherSuiteTKIP = 2, 84 Ieee80211PairwiseCipherSuiteCCMP = 4, 85 Ieee80211PairwiseCipherSuiteWEP104 = 5, 86 Ieee80211PairwiseCipherSuiteBIP = 6, 87 Ieee80211PairwiseCipherSuiteGCMP = 8, 88 Ieee80211PairwiseCipherSuiteGCMP256 = 9, 89 // ... 86 90 } IEEE_80211_PAIRWISE_CIPHER_SUITE; 87 91 88 #define IEEE_80211_PAIRWISE_CIPHER_SUITE_USE_GROUP (OUI_IEEE_80211I | (Ieee80211PairwiseCipherSuiteUseGroupCipherSuite << 24)) 89 #define IEEE_80211_PAIRWISE_CIPHER_SUITE_WEP40 (OUI_IEEE_80211I | (Ieee80211PairwiseCipherSuiteWEP40 << 24)) 90 #define IEEE_80211_PAIRWISE_CIPHER_SUITE_TKIP (OUI_IEEE_80211I | (Ieee80211PairwiseCipherSuiteTKIP << 24)) 91 #define IEEE_80211_PAIRWISE_CIPHER_SUITE_CCMP (OUI_IEEE_80211I | (Ieee80211PairwiseCipherSuiteCCMP << 24)) 92 #define IEEE_80211_PAIRWISE_CIPHER_SUITE_WEP104 (OUI_IEEE_80211I | (Ieee80211PairwiseCipherSuiteWEP104 << 24)) 93 #define IEEE_80211_PAIRWISE_CIPHER_SUITE_BIP (OUI_IEEE_80211I | (Ieee80211PairwiseCipherSuiteBIP << 24)) 92 #define IEEE_80211_PAIRWISE_CIPHER_SUITE_USE_GROUP (OUI_IEEE_80211I | (Ieee80211PairwiseCipherSuiteUseGroupCipherSuite << 24)) 93 #define IEEE_80211_PAIRWISE_CIPHER_SUITE_WEP40 (OUI_IEEE_80211I | (Ieee80211PairwiseCipherSuiteWEP40 << 24)) 94 #define IEEE_80211_PAIRWISE_CIPHER_SUITE_TKIP (OUI_IEEE_80211I | (Ieee80211PairwiseCipherSuiteTKIP << 24)) 95 #define IEEE_80211_PAIRWISE_CIPHER_SUITE_CCMP (OUI_IEEE_80211I | (Ieee80211PairwiseCipherSuiteCCMP << 24)) 96 #define IEEE_80211_PAIRWISE_CIPHER_SUITE_WEP104 (OUI_IEEE_80211I | (Ieee80211PairwiseCipherSuiteWEP104 << 24)) 97 #define IEEE_80211_PAIRWISE_CIPHER_SUITE_BIP (OUI_IEEE_80211I | (Ieee80211PairwiseCipherSuiteBIP << 24)) 98 #define IEEE_80211_PAIRWISE_CIPHER_SUITE_GCMP (OUI_IEEE_80211I | (Ieee80211PairwiseCipherSuiteGCMP << 24)) 99 #define IEEE_80211_PAIRWISE_CIPHER_SUITE_GCMP256 (OUI_IEEE_80211I | (Ieee80211PairwiseCipherSuiteGCMP256 << 24)) 94 100 95 101 typedef enum { … … 97 103 Ieee80211AkmSuitePSK = 2, 98 104 Ieee80211AkmSuite8021XOrPMKSASHA256 = 5, 99 Ieee80211AkmSuitePSKSHA256 = 6 100 //... 105 Ieee80211AkmSuitePSKSHA256 = 6, 106 Ieee80211AkmSuiteSAE = 8, 107 Ieee80211AkmSuite8021XSuiteB = 11, 108 Ieee80211AkmSuite8021XSuiteB192 = 12, 109 Ieee80211AkmSuiteOWE = 18, 110 // ... 101 111 } IEEE_80211_AKM_SUITE; 102 112 … … 105 115 #define IEEE_80211_AKM_SUITE_8021X_OR_PMKSA_SHA256 (OUI_IEEE_80211I | (Ieee80211AkmSuite8021XOrPMKSASHA256 << 24)) 106 116 #define IEEE_80211_AKM_SUITE_PSK_SHA256 (OUI_IEEE_80211I | (Ieee80211AkmSuitePSKSHA256 << 24)) 117 #define IEEE_80211_AKM_SUITE_SAE (OUI_IEEE_80211I | (Ieee80211AkmSuiteSAE << 24)) 118 #define IEEE_80211_AKM_SUITE_8021X_SUITE_B (OUI_IEEE_80211I | (Ieee80211AkmSuite8021XSuiteB << 24)) 119 #define IEEE_80211_AKM_SUITE_8021X_SUITE_B192 (OUI_IEEE_80211I | (Ieee80211AkmSuite8021XSuiteB192 << 24)) 120 #define IEEE_80211_AKM_SUITE_OWE (OUI_IEEE_80211I | (Ieee80211AkmSuiteOWE << 24)) 107 121 108 122 // 109 123 // Protocol instances 110 124 // 111 extern EFI_DRIVER_BINDING_PROTOCOL 112 extern EFI_COMPONENT_NAME2_PROTOCOL 113 extern EFI_COMPONENT_NAME_PROTOCOL 114 extern EFI_HII_CONFIG_ACCESS_PROTOCOL 125 extern EFI_DRIVER_BINDING_PROTOCOL gWifiMgrDxeDriverBinding; 126 extern EFI_COMPONENT_NAME2_PROTOCOL gWifiMgrDxeComponentName2; 127 extern EFI_COMPONENT_NAME_PROTOCOL gWifiMgrDxeComponentName; 128 extern EFI_HII_CONFIG_ACCESS_PROTOCOL gWifiMgrDxeHiiConfigAccess; 115 129 116 130 // … … 131 145 } WIFI_MGR_SCAN_STATE; 132 146 133 #define WIFI_SCAN_FREQUENCY 147 #define WIFI_SCAN_FREQUENCY 30 134 148 135 149 typedef struct _WIFI_MGR_SUPPORTED_SUITES { 136 EFI_80211_AKM_SUITE_SELECTOR *SupportedAKMSuites;137 EFI_80211_CIPHER_SUITE_SELECTOR *SupportedSwCipherSuites;138 EFI_80211_CIPHER_SUITE_SELECTOR *SupportedHwCipherSuites;150 EFI_80211_AKM_SUITE_SELECTOR *SupportedAKMSuites; 151 EFI_80211_CIPHER_SUITE_SELECTOR *SupportedSwCipherSuites; 152 EFI_80211_CIPHER_SUITE_SELECTOR *SupportedHwCipherSuites; 139 153 } WIFI_MGR_SUPPORTED_SUITES; 140 154 … … 144 158 } 145 159 146 typedef struct _WIFI_MGR_PRIVATE_DATA 160 typedef struct _WIFI_MGR_PRIVATE_DATA WIFI_MGR_PRIVATE_DATA; 147 161 148 162 typedef struct _WIFI_MGR_PRIVATE_PROTOCOL { 149 UINT32 Reserved;163 UINT32 Reserved; 150 164 } WIFI_MGR_PRIVATE_PROTOCOL; 151 165 152 166 typedef struct _WIFI_MGR_FILE_CONTEXT { 153 EFI_FILE_HANDLE 154 UINT16 167 EFI_FILE_HANDLE FHandle; 168 UINT16 *FileName; 155 169 } WIFI_MGR_FILE_CONTEXT; 156 170 … … 178 192 // Produced protocols 179 193 // 180 WIFI_MGR_PRIVATE_PROTOCOL 194 WIFI_MGR_PRIVATE_PROTOCOL WifiMgrIdentifier; 181 195 182 196 // 183 197 // Private functions and data fields 184 198 // 185 LIST_ENTRY Link;// Link to the NicList in global private data structure.186 UINT32 187 EFI_80211_MAC_ADDRESS 188 WIFI_MGR_SUPPORTED_SUITES 189 EFI_ADAPTER_INFO_MEDIA_STATE 199 LIST_ENTRY Link; // Link to the NicList in global private data structure. 200 UINT32 NicIndex; 201 EFI_80211_MAC_ADDRESS MacAddress; 202 WIFI_MGR_SUPPORTED_SUITES SupportedSuites; 203 EFI_ADAPTER_INFO_MEDIA_STATE LastLinkState; 190 204 191 205 // … … 193 207 // Only one network can be operated at one time. 194 208 // 195 WIFI_MGR_NETWORK_PROFILE 196 WIFI_MGR_NETWORK_PROFILE 197 BOOLEAN 198 199 // 200 // Profile related data fields201 // 202 LIST_ENTRY ProfileList;// List of WIFI_MGR_NETWORK_PROFILE203 UINT32 204 UINT32 205 WIFI_MGR_NETWORK_PROFILE 209 WIFI_MGR_NETWORK_PROFILE *CurrentOperateNetwork; 210 WIFI_MGR_NETWORK_PROFILE *ConnectPendingNetwork; 211 BOOLEAN HasDisconnectPendingNetwork; 212 213 // 214 // Profile related data fields 215 // 216 LIST_ENTRY ProfileList; // List of WIFI_MGR_NETWORK_PROFILE 217 UINT32 AvailableCount; 218 UINT32 MaxProfileIndex; 219 WIFI_MGR_NETWORK_PROFILE *UserSelectedProfile; 206 220 207 221 // 208 222 // Data fields for Hii functionlity 209 223 // 210 BOOLEAN 211 BOOLEAN 212 BOOLEAN 213 WIFI_MGR_SCAN_STATE 214 UINTN 215 WIFI_MGR_CONNECT_STATE 216 BOOLEAN 224 BOOLEAN OneTimeScanRequest; 225 BOOLEAN OneTimeConnectRequest; 226 BOOLEAN OneTimeDisconnectRequest; 227 WIFI_MGR_SCAN_STATE ScanState; 228 UINTN ScanTickTime; 229 WIFI_MGR_CONNECT_STATE ConnectState; 230 BOOLEAN ConnectStateChanged; 217 231 } WIFI_MGR_DEVICE_DATA; 218 232 … … 228 242 229 243 typedef struct { 230 UINT32 231 LIST_ENTRY 232 CHAR16 244 UINT32 Signature; 245 LIST_ENTRY Link; 246 CHAR16 SSId[SSID_STORAGE_SIZE]; 233 247 } WIFI_HIDDEN_NETWORK_DATA; 234 248 … … 247 261 // 248 262 struct _WIFI_MGR_PRIVATE_DATA { 249 250 263 UINT32 Signature; 251 264 EFI_HANDLE DriverHandle; … … 265 278 266 279 // 267 // User Input Record280 // User Input Record 268 281 // 269 282 UINT8 SecurityType; … … 288 301 WIFI_MGR_PRIVATE_DATA_SIGNATURE \ 289 302 ) 290 extern WIFI_MGR_PRIVATE_DATA 303 extern WIFI_MGR_PRIVATE_DATA *mPrivate; 291 304 292 305 typedef enum { … … 298 311 299 312 typedef union { 300 EFI_80211_GET_NETWORKS_TOKEN *GetNetworksToken;301 EFI_80211_CONNECT_NETWORK_TOKEN *ConnectNetworkToken;302 EFI_80211_DISCONNECT_NETWORK_TOKEN *DisconnectNetworkToken;313 EFI_80211_GET_NETWORKS_TOKEN *GetNetworksToken; 314 EFI_80211_CONNECT_NETWORK_TOKEN *ConnectNetworkToken; 315 EFI_80211_DISCONNECT_NETWORK_TOKEN *DisconnectNetworkToken; 303 316 } MAC_CONNECTION2_ADAPTER_TOKEN; 304 317 305 318 typedef struct { 306 WIFI_MGR_DEVICE_DATA *Nic;307 WIFI_MGR_MAC_CONFIG_TOKEN_TYPE Type;308 MAC_CONNECTION2_ADAPTER_TOKEN Token;319 WIFI_MGR_DEVICE_DATA *Nic; 320 WIFI_MGR_MAC_CONFIG_TOKEN_TYPE Type; 321 MAC_CONNECTION2_ADAPTER_TOKEN Token; 309 322 } WIFI_MGR_MAC_CONFIG_TOKEN; 310 323
Note:
See TracChangeset
for help on using the changeset viewer.