1
0
mirror of https://github.com/veracrypt/VeraCrypt.git synced 2025-11-11 11:08:02 -06:00

Windows EFI Bootloader: Add new attributes "DcsBmlDriver" and "DcsBmlLockFlags" to EFI configuration DcsProp. Set their values to 0 to disable DcsBml functionality.

This commit is contained in:
Mounir IDRASSI
2017-06-18 16:08:27 +02:00
parent d71658efd2
commit ee5c1784ea
2 changed files with 10 additions and 1 deletions

View File

@@ -1854,7 +1854,9 @@ namespace VeraCrypt
pim (0), pim (0),
requestPim (1), requestPim (1),
authorizeVisible (0), authorizeVisible (0),
authorizeRetry (10) authorizeRetry (10),
bmlLockFlags (0),
bmlDriverEnabled (0)
{ {
} }
@@ -1970,6 +1972,8 @@ namespace VeraCrypt
requestPim = ReadConfigInteger (configContent, "PimRqt", 1); requestPim = ReadConfigInteger (configContent, "PimRqt", 1);
authorizeVisible = ReadConfigInteger (configContent, "AuthorizeVisible", 0); authorizeVisible = ReadConfigInteger (configContent, "AuthorizeVisible", 0);
authorizeRetry = ReadConfigInteger (configContent, "AuthorizeRetry", 0); authorizeRetry = ReadConfigInteger (configContent, "AuthorizeRetry", 0);
bmlLockFlags = ReadConfigInteger (configContent, "DcsBmlLockFlags", 0);
bmlDriverEnabled = ReadConfigInteger (configContent, "DcsBmlDriver", 0);
burn (buffer, sizeof (buffer)); burn (buffer, sizeof (buffer));
} }
@@ -2003,6 +2007,8 @@ namespace VeraCrypt
WriteConfigInteger (configFile, configContent, "PimRqt", requestPim); WriteConfigInteger (configFile, configContent, "PimRqt", requestPim);
WriteConfigInteger (configFile, configContent, "AuthorizeVisible", authorizeVisible); WriteConfigInteger (configFile, configContent, "AuthorizeVisible", authorizeVisible);
WriteConfigInteger (configFile, configContent, "AuthorizeRetry", authorizeRetry); WriteConfigInteger (configFile, configContent, "AuthorizeRetry", authorizeRetry);
WriteConfigInteger (configFile, configContent, "DcsBmlLockFlags", bmlLockFlags);
WriteConfigInteger (configFile, configContent, "DcsBmlDriver", bmlDriverEnabled);
// Write unmodified values // Write unmodified values
char* xml = configContent; char* xml = configContent;
@@ -3585,6 +3591,7 @@ namespace VeraCrypt
EfiBootInst.MountBootPartition(0); EfiBootInst.MountBootPartition(0);
EfiBootInst.DeleteStartExec(); EfiBootInst.DeleteStartExec();
EfiBootInst.DeleteStartExec(0xDC5B, L"Driver"); // remove DcsBml boot driver it was installed
if (Is64BitOs()) if (Is64BitOs())
EfiBootInst.RenameFile(L"\\EFI\\Boot\\original_bootx64.vc_backup", L"\\EFI\\Boot\\bootx64.efi", TRUE); EfiBootInst.RenameFile(L"\\EFI\\Boot\\original_bootx64.vc_backup", L"\\EFI\\Boot\\bootx64.efi", TRUE);
else else

View File

@@ -173,6 +173,8 @@ namespace VeraCrypt
int requestPim; int requestPim;
int authorizeVisible; int authorizeVisible;
int authorizeRetry; int authorizeRetry;
int bmlLockFlags;
int bmlDriverEnabled;
EfiBootConf(); EfiBootConf();