diff options
author | kavsrf <kavsrf@gmail.com> | 2017-06-13 17:19:47 +0300 |
---|---|---|
committer | Mounir IDRASSI <mounir.idrassi@idrix.fr> | 2017-06-18 15:51:59 +0200 |
commit | 0ba0723c769f95d312835967c47e34e444fea368 (patch) | |
tree | 91672b6c6b8de151ddaf1ee62cd1daed781cdaad /Library/CommonLib/EfiVar.c | |
parent | 3058711f8b12cf11585e0eda2a1b573f0d871667 (diff) | |
download | VeraCrypt-DCS-0ba0723c769f95d312835967c47e34e444fea368.tar.gz VeraCrypt-DCS-0ba0723c769f95d312835967c47e34e444fea368.zip |
solution of HP problem via DrverOrder and BML modified driver
Diffstat (limited to 'Library/CommonLib/EfiVar.c')
-rw-r--r-- | Library/CommonLib/EfiVar.c | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/Library/CommonLib/EfiVar.c b/Library/CommonLib/EfiVar.c index fad6eb5..e9c1082 100644 --- a/Library/CommonLib/EfiVar.c +++ b/Library/CommonLib/EfiVar.c @@ -146,6 +146,33 @@ BootOrderRemove( }
EFI_STATUS
+BootOrderPresent(
+ IN CHAR16 *OrderVarName,
+ UINT16 value)
+{
+ EFI_STATUS res = EFI_NOT_READY;
+ UINT16* varBootOrder;
+ UINTN varBootOrderSize;
+ UINT32 varBootOrderAttr;
+ UINTN BootOrderCount;
+ UINTN i;
+ UINTN j;
+
+ res = EfiGetVar(OrderVarName, &gEfiGlobalVariableGuid, &varBootOrder, &varBootOrderSize, &varBootOrderAttr);
+ if (EFI_ERROR(res)) return res;
+ BootOrderCount = varBootOrderSize / sizeof(UINT16);
+ res = EFI_NOT_FOUND;
+ for (j = 0, i = 0; i < BootOrderCount; ++i) {
+ if (varBootOrder[i] == value) {
+ MEM_FREE(varBootOrder);
+ res = EFI_SUCCESS;
+ break;
+ }
+ }
+ return res;
+}
+
+EFI_STATUS
BootMenuItemRemove(
IN CHAR16 *VarName
)
|