Hello Dandan:
Attached patch resolve the Issue. Can you please provide your comments.
Left base folder: E:\Work\NWStack\EDK2Tickets\WifiPassword\MOD
Right base folder: E:\Work\NWStack\EDK2Tickets\WifiPassword\ORG
*** WifiConnectionMgrHiiConfigAccess.c 2020-08-18 10:21:27.000000000 +05-30
--- WifiConnectionMgrHiiConfigAccess.c 2020-05-07 22:54:46.000000000 +05-30
***************
*** 365,378 ****
Hii form.
**/
EFI_STATUS
WifiMgrRefreshNetworkList (
IN WIFI_MGR_PRIVATE_DATA *Private,
! OUT WIFI_MANAGER_IFR_NVDATA *IfrNvData,
! OUT WIFI_MGR_NETWORK_PROFILE *ProfileData
)
{
EFI_STATUS Status;
EFI_TPL OldTpl;
UINT32 AvailableCount;
EFI_STRING_ID PortPromptToken;
--- 365,377 ----
Hii form.
**/
EFI_STATUS
WifiMgrRefreshNetworkList (
IN WIFI_MGR_PRIVATE_DATA *Private,
! OUT WIFI_MANAGER_IFR_NVDATA *IfrNvData
)
{
EFI_STATUS Status;
EFI_TPL OldTpl;
UINT32 AvailableCount;
EFI_STRING_ID PortPromptToken;
***************
*** 663,675 ****
FreePool (CipherListDisplay);
}
HiiFreeOpCodeHandle (StartOpCodeHandle);
HiiFreeOpCodeHandle (EndOpCodeHandle);
- ProfileData->SecurityType= Profile->SecurityType;
DEBUG ((DEBUG_INFO, "[WiFi Connection Manager] Network List is Refreshed!\n"));
return Status;
}
/**
Refresh the hidden network list configured by user.
--- 662,673 ----
***************
*** 1330,1342 ****
EFI_INPUT_KEY Key;
UINTN BufferSize;
WIFI_MGR_PRIVATE_DATA *Private;
WIFI_MANAGER_IFR_NVDATA *IfrNvData;
EFI_DEVICE_PATH_PROTOCOL *FilePath;
WIFI_MGR_NETWORK_PROFILE *Profile;
- WIFI_MGR_NETWORK_PROFILE *ProfileData;
WIFI_MGR_NETWORK_PROFILE *ProfileToConnect;
WIFI_HIDDEN_NETWORK_DATA *HiddenNetwork;
UINTN TempDataSize;
VOID *TempData;
LIST_ENTRY *Entry;
UINT32 Index;
--- 1328,1339 ----
***************
*** 1877,1891 ****
} else if (Action == EFI_BROWSER_ACTION_RETRIEVE) {
switch (QuestionId) {
case KEY_REFRESH_NETWORK_LIST:
! ProfileData = Private->CurrentNic->CurrentOperateNetwork;
! WifiMgrRefreshNetworkList (Private, IfrNvData,ProfileData);
! IfrNvData->SecurityType = ProfileData->SecurityType;
break;
default:
break;
}
}
--- 1874,1886 ----
} else if (Action == EFI_BROWSER_ACTION_RETRIEVE) {
switch (QuestionId) {
case KEY_REFRESH_NETWORK_LIST:
! WifiMgrRefreshNetworkList (Private, IfrNvData);
break;
default:
break;
}
}
*** WifiConnectionMgrHiiConfigAccess.h 2020-08-18 10:19:37.000000000 +05-30
--- WifiConnectionMgrHiiConfigAccess.h 2020-05-07 22:54:46.000000000 +05-30
***************
*** 232,242 ****
Hii form.
**/
EFI_STATUS
WifiMgrRefreshNetworkList (
IN WIFI_MGR_PRIVATE_DATA *Private,
! OUT WIFI_MANAGER_IFR_NVDATA *IfrNvData,
! OUT WIFI_MGR_NETWORK_PROFILE *ProfileData
);
#endif
--- 232,241 ----
Hii form.
**/
EFI_STATUS
WifiMgrRefreshNetworkList (
IN WIFI_MGR_PRIVATE_DATA *Private,
! OUT WIFI_MANAGER_IFR_NVDATA *IfrNvData
);
#endif
-Siva
From: Bi, Dandan [mailto:dandan.bi@intel.com]
Sent: Tuesday, May 19, 2020 2:42 PM
To: Sivaraman Nainar; Wu, Jiaxin; Rabeda, Maciej
Cc: devel@edk2.groups.io
Subject: RE: reg: Wifi Connection Manager Setup Page Issues
Hi
Could you try to call WifiMgrDxeHiiConfigAccessCallback() in EFI_BROWSER_ACTION_RETRIEVE?
Thanks/Dandan
From: Sivaraman Nainar <sivaramann@amiindia.co.in>
Sent: Friday, May 15, 2020 7:55 PM
To: Wu, Jiaxin <jiaxin.wu@intel.com>; Rabeda, Maciej <maciej.rabeda@linux.intel.com>; Bi, Dandan <dandan.bi@intel.com>
Cc: devel@edk2.groups.io; Sivaraman Nainar <sivaramann@amiindia.co.in>
Subject: RE: reg: Wifi Connection Manager Setup Page Issues
Hello Jiaxin / Dandan:
Could you please provide your comments.
-Siva
From: devel@edk2.groups.io [mailto:devel@edk2.groups.io]
On Behalf Of Sivaraman Nainar
Sent: Friday, May 8, 2020 8:34 AM
To: devel@edk2.groups.io
Cc: jiaxin.wu@intel.com; Rabeda, Maciej
Subject: [edk2-devel] reg: Wifi Connection Manager Setup Page Issues
Hello,
Getting an issue in Wifi Connection Manager Setup page when UEFI Spec 2.8 BrowserCallback specific changes integrated in Setup Browser.
According to UEFI Spec 2.8, Browser Callback is allowed to call only from Driver's ConfigAccess protocol and via ConfigAccess->Callback() it allowed for all type of actions except EFI_BROWSER_ACTION_FORM_OPEN.
WifiMgrDxeHiiConfigAccessCallback() is the callback function of WifiConnectionMgr. In this callback Security Type IfrData is updated on action EFI_BROWSER_ACTION_FORM_OPEN. When the setup browser is not invoking the WifiMgrDxeHiiConfigAccessCallback
in EFI_BROWSER_ACTION_FORM_OPEN action the control value not updated hence the browser does not show the Security Password control. The VFR suppress the Password control and shows the control only when SecurityType is
SECURITY_TYPE_WPA2_PERSONAL.
Would you please feedback how this can be addressed?
-Siva
This e-mail is intended for the use of the addressee only and may contain privileged, confidential, or proprietary information that is exempt from disclosure under law. If you have received
this message in error, please inform us promptly by reply e-mail, then delete the e-mail and destroy any printed copy. Thank you.