From 380850787e59152100eed8c5c06d0e81a34e39e0 Mon Sep 17 00:00:00 2001 From: Mounir IDRASSI Date: Tue, 17 Sep 2024 18:25:52 +0200 Subject: Windows: Simplify error message related to IsEfiBoot since it always fail with ERROR_INVALID_FUNCTION Proposed by @kriegste on https://github.com/veracrypt/VeraCrypt/issues/360 --- src/Common/BootEncryption.cpp | 26 ++++++-------------------- 1 file changed, 6 insertions(+), 20 deletions(-) diff --git a/src/Common/BootEncryption.cpp b/src/Common/BootEncryption.cpp index bf7a0f64..f79e7339 100644 --- a/src/Common/BootEncryption.cpp +++ b/src/Common/BootEncryption.cpp @@ -2651,16 +2651,9 @@ namespace VeraCrypt } // Check EFI if (!IsEfiBoot()) { - dwLastError = GetLastError(); - if (dwLastError != ERROR_SUCCESS) - { - if (!bPrivilegesSet) - SetPrivilege(SE_SYSTEM_ENVIRONMENT_NAME, FALSE); - // format message to append the error code to the exception message - wchar_t szMsg[128]; - StringCchPrintfW(szMsg, ARRAYSIZE(szMsg), L"Failed to detect EFI environment (error code 0x%.8X)", dwLastError); - throw ErrorException(szMsg, SRC_POS); - } + if (!bPrivilegesSet) + SetPrivilege(SE_SYSTEM_ENVIRONMENT_NAME, FALSE); + throw ErrorException(L"Failed to detect EFI environment (error ERROR_INVALID_FUNCTION)", SRC_POS); } wchar_t varName[256]; StringCchPrintfW(varName, ARRAYSIZE (varName), L"%s%04X", type == NULL ? L"Boot" : type, statrtOrderNum); @@ -2720,16 +2713,9 @@ namespace VeraCrypt } // Check EFI if (!IsEfiBoot()) { - dwLastError = GetLastError(); - if (dwLastError != ERROR_SUCCESS) - { - if (!bPrivilegesSet) - SetPrivilege(SE_SYSTEM_ENVIRONMENT_NAME, FALSE); - // format message to append the error code to the exception message - wchar_t szMsg[1024]; - StringCchPrintfW(szMsg, ARRAYSIZE(szMsg), L"Failed to detect EFI environment (error code 0x%.8X)", dwLastError); - throw ErrorException(szMsg, SRC_POS); - } + if (!bPrivilegesSet) + SetPrivilege(SE_SYSTEM_ENVIRONMENT_NAME, FALSE); + throw ErrorException(L"Failed to detect EFI environment (error ERROR_INVALID_FUNCTION)", SRC_POS); } if (bDeviceInfoValid) -- cgit v1.2.3