audk/NetworkPkg/WifiConnectionManagerDxe/WifiConnectionMgrConfig.h

75 lines
2.5 KiB
C

/** @file
Define network structure used by the WiFi Connection Manager.
Copyright (c) 2019, Intel Corporation. All rights reserved.<BR>
This program and the accompanying materials
are licensed and made available under the terms and conditions of the BSD License
which accompanies this distribution. The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
**/
#ifndef _WIFI_MGR_CONFIG_H_
#define _WIFI_MGR_CONFIG_H_
#include "WifiConnectionMgrConfigNVDataStruct.h"
extern UINT8 WifiConnectionManagerDxeBin[];
extern UINT8 WifiConnectionManagerDxeStrings[];
typedef struct {
UINT32 Signature;
//
// Link to the current profile list in NIC device data (WIFI_MGR_DEVICE_DATA)
//
LIST_ENTRY Link;
UINT32 NicIndex;
UINT32 ProfileIndex; // The unique identifier for network profile, starts from 1
CHAR16 SSId[SSID_STORAGE_SIZE];
CHAR16 Password[PASSWORD_STORAGE_SIZE];
UINT8 SecurityType;
UINT8 EapAuthMethod;
CHAR16 CACertName[WIFI_FILENAME_STR_MAX_SIZE];
VOID *CACertData;
UINTN CACertSize;
CHAR16 ClientCertName[WIFI_FILENAME_STR_MAX_SIZE];
VOID *ClientCertData;
UINTN ClientCertSize;
CHAR16 PrivateKeyName[WIFI_FILENAME_STR_MAX_SIZE];
VOID *PrivateKeyData;
UINTN PrivateKeyDataSize;
CHAR16 PrivateKeyPassword[PASSWORD_STORAGE_SIZE]; //Password to protect private key file
CHAR16 EapIdentity[EAP_IDENTITY_SIZE];
CHAR16 EapPassword[PASSWORD_STORAGE_SIZE];
UINT8 EapSecondAuthMethod;
BOOLEAN AKMSuiteSupported;
BOOLEAN CipherSuiteSupported;
BOOLEAN IsAvailable;
EFI_80211_NETWORK Network;
UINT8 NetworkQuality;
EFI_STRING_ID TitleToken;
} WIFI_MGR_NETWORK_PROFILE;
#define WIFI_MGR_PROFILE_SIGNATURE SIGNATURE_32 ('W','M','N','P')
#pragma pack(1)
///
/// HII specific Vendor Device Path definition.
///
typedef struct {
VENDOR_DEVICE_PATH VendorDevicePath;
EFI_DEVICE_PATH_PROTOCOL End;
} HII_VENDOR_DEVICE_PATH;
#pragma pack()
#endif