Return to BMM page if parse the file info failed.
Signed-off-by: Eric Dong <eric.dong@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> Reviewed-by: Siyuan Fu <siyuan.fu@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15067 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
@ -1,7 +1,7 @@
|
|||||||
/** @file
|
/** @file
|
||||||
Header file for boot maintenance module.
|
Header file for boot maintenance module.
|
||||||
|
|
||||||
Copyright (c) 2004 - 2012, Intel Corporation. All rights reserved.<BR>
|
Copyright (c) 2004 - 2014, Intel Corporation. All rights reserved.<BR>
|
||||||
This program and the accompanying materials
|
This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
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
|
which accompanies this distribution. The full text of the license may be found at
|
||||||
@ -124,8 +124,9 @@ typedef enum _FILE_EXPLORER_DISPLAY_CONTEXT {
|
|||||||
#define FD_OPTION_OFFSET 0xC000
|
#define FD_OPTION_OFFSET 0xC000
|
||||||
#define HD_OPTION_OFFSET 0xB000
|
#define HD_OPTION_OFFSET 0xB000
|
||||||
#define CD_OPTION_OFFSET 0xA000
|
#define CD_OPTION_OFFSET 0xA000
|
||||||
|
#define FILE_OPTION_GOTO_OFFSET 0xC000
|
||||||
#define FILE_OPTION_OFFSET 0x8000
|
#define FILE_OPTION_OFFSET 0x8000
|
||||||
#define FILE_OPTION_MASK 0x7FFF
|
#define FILE_OPTION_MASK 0x3FFF
|
||||||
#define HANDLE_OPTION_OFFSET 0x7000
|
#define HANDLE_OPTION_OFFSET 0x7000
|
||||||
#define CONSOLE_OPTION_OFFSET 0x6000
|
#define CONSOLE_OPTION_OFFSET 0x6000
|
||||||
#define TERMINAL_OPTION_OFFSET 0x5000
|
#define TERMINAL_OPTION_OFFSET 0x5000
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
/** @file
|
/** @file
|
||||||
File explorer related functions.
|
File explorer related functions.
|
||||||
|
|
||||||
Copyright (c) 2004 - 2012, Intel Corporation. All rights reserved.<BR>
|
Copyright (c) 2004 - 2014, Intel Corporation. All rights reserved.<BR>
|
||||||
This program and the accompanying materials
|
This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
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
|
which accompanies this distribution. The full text of the license may be found at
|
||||||
@ -75,7 +75,7 @@ UpdateFileExplorePage (
|
|||||||
NewMenuEntry->DisplayStringToken,
|
NewMenuEntry->DisplayStringToken,
|
||||||
STRING_TOKEN (STR_NULL_STRING),
|
STRING_TOKEN (STR_NULL_STRING),
|
||||||
EFI_IFR_FLAG_CALLBACK,
|
EFI_IFR_FLAG_CALLBACK,
|
||||||
(UINT16) (FILE_OPTION_OFFSET + Index)
|
(UINT16) (FILE_OPTION_GOTO_OFFSET + Index)
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -320,13 +320,23 @@ FileExplorerCallback (
|
|||||||
// Exit File Explorer formset
|
// Exit File Explorer formset
|
||||||
//
|
//
|
||||||
*ActionRequest = EFI_BROWSER_ACTION_REQUEST_EXIT;
|
*ActionRequest = EFI_BROWSER_ACTION_REQUEST_EXIT;
|
||||||
|
} else if (QuestionId >= FILE_OPTION_OFFSET && QuestionId < FILE_OPTION_GOTO_OFFSET) {
|
||||||
|
//
|
||||||
|
// Update forms may return TRUE or FALSE, need to check here.
|
||||||
|
//
|
||||||
|
if (UpdateFileExplorer (Private, QuestionId)) {
|
||||||
|
*ActionRequest = EFI_BROWSER_ACTION_REQUEST_EXIT;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
} else if (Action == EFI_BROWSER_ACTION_CHANGING) {
|
} else if (Action == EFI_BROWSER_ACTION_CHANGING) {
|
||||||
if (Value == NULL) {
|
if (Value == NULL) {
|
||||||
return EFI_INVALID_PARAMETER;
|
return EFI_INVALID_PARAMETER;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (QuestionId >= FILE_OPTION_OFFSET) {
|
if (QuestionId >= FILE_OPTION_GOTO_OFFSET) {
|
||||||
|
//
|
||||||
|
// function will always return FALSE, no need to check here.
|
||||||
|
//
|
||||||
UpdateFileExplorer (Private, QuestionId);
|
UpdateFileExplorer (Private, QuestionId);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
/** @file
|
/** @file
|
||||||
Internal file explorer functions for SecureBoot configuration module.
|
Internal file explorer functions for SecureBoot configuration module.
|
||||||
|
|
||||||
Copyright (c) 2012 - 2013, Intel Corporation. All rights reserved.<BR>
|
Copyright (c) 2012 - 2014, Intel Corporation. All rights reserved.<BR>
|
||||||
This program and the accompanying materials
|
This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
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
|
which accompanies this distribution. The full text of the license may be found at
|
||||||
@ -1069,7 +1069,7 @@ UpdateFileExplorePage (
|
|||||||
NewMenuEntry->DisplayStringToken,
|
NewMenuEntry->DisplayStringToken,
|
||||||
STRING_TOKEN (STR_NULL),
|
STRING_TOKEN (STR_NULL),
|
||||||
EFI_IFR_FLAG_CALLBACK,
|
EFI_IFR_FLAG_CALLBACK,
|
||||||
(UINT16) (FILE_OPTION_OFFSET + Index)
|
(UINT16) (FILE_OPTION_GOTO_OFFSET + Index)
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
/** @file
|
/** @file
|
||||||
HII Config Access protocol implementation of SecureBoot configuration module.
|
HII Config Access protocol implementation of SecureBoot configuration module.
|
||||||
|
|
||||||
Copyright (c) 2011 - 2013, Intel Corporation. All rights reserved.<BR>
|
Copyright (c) 2011 - 2014, Intel Corporation. All rights reserved.<BR>
|
||||||
This program and the accompanying materials
|
This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
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
|
which accompanies this distribution. The full text of the license may be found at
|
||||||
@ -2714,7 +2714,7 @@ SecureBootCallback (
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
if (QuestionId >= FILE_OPTION_OFFSET) {
|
if (QuestionId >= FILE_OPTION_GOTO_OFFSET) {
|
||||||
UpdateFileExplorer (Private, QuestionId);
|
UpdateFileExplorer (Private, QuestionId);
|
||||||
} else if ((QuestionId >= OPTION_DEL_KEK_QUESTION_ID) &&
|
} else if ((QuestionId >= OPTION_DEL_KEK_QUESTION_ID) &&
|
||||||
(QuestionId < (OPTION_DEL_KEK_QUESTION_ID + OPTION_CONFIG_RANGE))) {
|
(QuestionId < (OPTION_DEL_KEK_QUESTION_ID + OPTION_CONFIG_RANGE))) {
|
||||||
@ -2822,6 +2822,13 @@ SecureBootCallback (
|
|||||||
FreePool (SetupMode);
|
FreePool (SetupMode);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
default:
|
||||||
|
if (QuestionId >= FILE_OPTION_OFFSET && QuestionId < FILE_OPTION_GOTO_OFFSET) {
|
||||||
|
if (UpdateFileExplorer (Private, QuestionId)) {
|
||||||
|
*ActionRequest = EFI_BROWSER_ACTION_REQUEST_EXIT;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
} else if (Action == EFI_BROWSER_ACTION_DEFAULT_STANDARD) {
|
} else if (Action == EFI_BROWSER_ACTION_DEFAULT_STANDARD) {
|
||||||
if (QuestionId == KEY_HIDE_SECURE_BOOT) {
|
if (QuestionId == KEY_HIDE_SECURE_BOOT) {
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
/** @file
|
/** @file
|
||||||
Header file for NV data structure definition.
|
Header file for NV data structure definition.
|
||||||
|
|
||||||
Copyright (c) 2011 - 2013, Intel Corporation. All rights reserved.<BR>
|
Copyright (c) 2011 - 2014, Intel Corporation. All rights reserved.<BR>
|
||||||
This program and the accompanying materials
|
This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
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
|
which accompanies this distribution. The full text of the license may be found at
|
||||||
@ -95,9 +95,9 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
|||||||
//
|
//
|
||||||
#define OPTION_DEL_DBX_QUESTION_ID 0x4000
|
#define OPTION_DEL_DBX_QUESTION_ID 0x4000
|
||||||
|
|
||||||
|
#define FILE_OPTION_GOTO_OFFSET 0xC000
|
||||||
#define FILE_OPTION_OFFSET 0x8000
|
#define FILE_OPTION_OFFSET 0x8000
|
||||||
#define FILE_OPTION_MASK 0x7FFF
|
#define FILE_OPTION_MASK 0x3FFF
|
||||||
|
|
||||||
#define SECURE_BOOT_GUID_SIZE 36
|
#define SECURE_BOOT_GUID_SIZE 36
|
||||||
#define SECURE_BOOT_GUID_STORAGE_SIZE 37
|
#define SECURE_BOOT_GUID_STORAGE_SIZE 37
|
||||||
|
Reference in New Issue
Block a user