Hi, Chang
I received 4 patch mails with the same title "[PATCH] NetworkPkg/TlsAuthConfigDxe: Use HiiPopUp() instead of CreatePopUp()". Did you sent them by mistake or they are different patches? Please update the title with [PATCH v*] prefix if the patch content is changed so we could know which is the latest one. Thanks
Best Regards
Siyuan
> -----Original Message-----
> From: Keysound Chang <keysound_chang@phoenix.com>
> Sent: 2020年4月9日 14:57
> To: devel@edk2.groups.io
> Cc: Keysound Chang <Keysound_Chang@phoenix.com>; Wu, Jiaxin
> <jiaxin.wu@intel.com>; Fu, Siyuan <siyuan.fu@intel.com>; Maciej Rabeda
> <maciej.rabeda@linux.intel.com>
> Subject: [PATCH] NetworkPkg/TlsAuthConfigDxe: Use HiiPopUp() instead of
> CreatePopUp()
>
> From: Keysound Chang <Keysound_Chang@phoenix.com>
>
> REF:https://bugzilla.tianocore.org/show_bug.cgi?id=2635
>
> According to EDK2 Driver Writer's Guide For UEFI 2.3.1, 4.2.18 Offer
> alternatives to function keys. Configuration of drivers should be
> accomplished via HII and via OS-present interfaces.
>
> Cc: Jiaxin Wu <jiaxin.wu@intel.com>
> Cc: Siyuan Fu <siyuan.fu@intel.com>
> Signed-off-by: Maciej Rabeda <maciej.rabeda@linux.intel.com>
> ---
> .../TlsAuthConfigDxe/TlsAuthConfigDxe.inf | 1 +
> .../TlsAuthConfigDxeStrings.uni | 2 ++
> .../TlsAuthConfigDxe/TlsAuthConfigImpl.c | 20 +++++++++++++------
> .../TlsAuthConfigDxe/TlsAuthConfigImpl.h | 1 +
> 4 files changed, 18 insertions(+), 6 deletions(-)
>
> diff --git a/NetworkPkg/TlsAuthConfigDxe/TlsAuthConfigDxe.inf
> b/NetworkPkg/TlsAuthConfigDxe/TlsAuthConfigDxe.inf
> index 3fc924a1d4..0ada835252 100644
> --- a/NetworkPkg/TlsAuthConfigDxe/TlsAuthConfigDxe.inf
> +++ b/NetworkPkg/TlsAuthConfigDxe/TlsAuthConfigDxe.inf
> @@ -52,6 +52,7 @@
> [Protocols]
>
> gEfiDevicePathProtocolGuid ## PRODUCES
>
> gEfiHiiConfigAccessProtocolGuid ## PRODUCES
>
> + gEfiHiiPopupProtocolGuid ## CONSUMES
>
>
>
> [Guids]
>
> gTlsAuthConfigGuid ## PRODUCES ## GUID
>
> diff --git a/NetworkPkg/TlsAuthConfigDxe/TlsAuthConfigDxeStrings.uni
> b/NetworkPkg/TlsAuthConfigDxe/TlsAuthConfigDxeStrings.uni
> index 973b8b7716..2b4a27d24e 100644
> --- a/NetworkPkg/TlsAuthConfigDxe/TlsAuthConfigDxeStrings.uni
> +++ b/NetworkPkg/TlsAuthConfigDxe/TlsAuthConfigDxeStrings.uni
> @@ -28,6 +28,8 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
> #string STR_TLS_AUTH_CONFIG_SAVE_AND_EXIT #language en-US
> "Commit Changes and Exit"
>
> #string STR_TLS_AUTH_CONFIG_NO_SAVE_AND_EXIT #language en-US
> "Discard Changes and Exit"
>
>
>
> +#string STR_TLS_AUTH_ENROLL_CERT_FAILURE #language en-US
> "Enroll Cert Failure!"
>
> +
>
> #string STR_CERT_TYPE_PCKS_GUID #language en-US "GUID for
> CERT"
>
>
>
> #string STR_NULL #language en-US ""
>
> diff --git a/NetworkPkg/TlsAuthConfigDxe/TlsAuthConfigImpl.c
> b/NetworkPkg/TlsAuthConfigDxe/TlsAuthConfigImpl.c
> index 2481d1098f..0ef96dfaf2 100644
> --- a/NetworkPkg/TlsAuthConfigDxe/TlsAuthConfigImpl.c
> +++ b/NetworkPkg/TlsAuthConfigDxe/TlsAuthConfigImpl.c
> @@ -1383,7 +1383,6 @@ TlsAuthConfigAccessCallback (
> OUT EFI_BROWSER_ACTION_REQUEST *ActionRequest
>
> )
>
> {
>
> - EFI_INPUT_KEY Key;
>
> EFI_STATUS Status;
>
> RETURN_STATUS RStatus;
>
> TLS_AUTH_CONFIG_PRIVATE_DATA *Private;
>
> @@ -1391,6 +1390,8 @@ TlsAuthConfigAccessCallback (
> TLS_AUTH_CONFIG_IFR_NVDATA *IfrNvData;
>
> UINT16 LabelId;
>
> EFI_DEVICE_PATH_PROTOCOL *File;
>
> + EFI_HII_POPUP_PROTOCOL *HiiPopUp;
>
> + EFI_HII_POPUP_SELECTION PopUpSelect;
>
>
>
> Status = EFI_SUCCESS;
>
> File = NULL;
>
> @@ -1402,6 +1403,11 @@ TlsAuthConfigAccessCallback (
> Private = TLS_AUTH_CONFIG_PRIVATE_FROM_THIS (This);
>
>
>
> mTlsAuthPrivateData = Private;
>
> + Status = gBS->LocateProtocol (&gEfiHiiPopupProtocolGuid, NULL,
> &HiiPopUp);
>
> + if (EFI_ERROR (Status)) {
>
> + DEBUG ((DEBUG_ERROR, "Can't find Form PopUp protocol. Exit (%r)\n",
> Status));
>
> + return Status;
>
> + }
>
>
>
> //
>
> // Retrieve uncommitted data from Browser
>
> @@ -1460,11 +1466,13 @@ TlsAuthConfigAccessCallback (
> if (EFI_ERROR (Status)) {
>
> CleanFileContext (Private);
>
>
>
> - CreatePopUp (
>
> - EFI_LIGHTGRAY | EFI_BACKGROUND_BLUE,
>
> - &Key,
>
> - L"ERROR: Enroll Cert Failure!",
>
> - NULL
>
> + HiiPopUp->CreatePopup(
>
> + HiiPopUp,
>
> + EfiHiiPopupStyleError,
>
> + EfiHiiPopupTypeOk,
>
> + Private->RegisteredHandle,
>
> + STRING_TOKEN(STR_TLS_AUTH_ENROLL_CERT_FAILURE),
>
> + &PopUpSelect
>
> );
>
> }
>
> break;
>
> diff --git a/NetworkPkg/TlsAuthConfigDxe/TlsAuthConfigImpl.h
> b/NetworkPkg/TlsAuthConfigDxe/TlsAuthConfigImpl.h
> index e9af492893..68c16845b3 100644
> --- a/NetworkPkg/TlsAuthConfigDxe/TlsAuthConfigImpl.h
> +++ b/NetworkPkg/TlsAuthConfigDxe/TlsAuthConfigImpl.h
> @@ -14,6 +14,7 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
>
>
> #include <Protocol/HiiConfigAccess.h>
>
> #include <Protocol/SimpleFileSystem.h>
>
> +#include <Protocol/HiiPopup.h>
>
>
>
> //
>
> // Libraries
>
> --
> 2.23.0.windows.1