.../TlsAuthConfigDxe/TlsAuthConfigDxe.inf | 1 + .../TlsAuthConfigDxeStrings.uni | 2 ++ .../TlsAuthConfigDxe/TlsAuthConfigImpl.c | 20 +++++++++++++------ .../TlsAuthConfigDxe/TlsAuthConfigImpl.h | 1 + 4 files changed, 18 insertions(+), 6 deletions(-)
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>
Signed-off-by: Keysound <keysound_chang@phoenix.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
-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#57106): https://edk2.groups.io/g/devel/message/57106
Mute This Topic: https://groups.io/mt/72892619/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-
© 2016 - 2024 Red Hat, Inc.