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:
@@ -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
|
||||||
|
|||||||
@@ -173,6 +173,8 @@ namespace VeraCrypt
|
|||||||
int requestPim;
|
int requestPim;
|
||||||
int authorizeVisible;
|
int authorizeVisible;
|
||||||
int authorizeRetry;
|
int authorizeRetry;
|
||||||
|
int bmlLockFlags;
|
||||||
|
int bmlDriverEnabled;
|
||||||
|
|
||||||
EfiBootConf();
|
EfiBootConf();
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user