diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/Boot/EFI/DcsBml.efi | bin | 8544 -> 8512 bytes | |||
-rw-r--r-- | src/Boot/EFI/DcsBml32.efi | bin | 6912 -> 6880 bytes | |||
-rw-r--r-- | src/Boot/EFI/DcsBoot.efi | bin | 12704 -> 20352 bytes | |||
-rw-r--r-- | src/Boot/EFI/DcsBoot32.efi | bin | 10080 -> 16832 bytes | |||
-rw-r--r-- | src/Boot/EFI/DcsCfg.efi | bin | 523264 -> 882656 bytes | |||
-rw-r--r-- | src/Boot/EFI/DcsCfg32.efi | bin | 492928 -> 764224 bytes | |||
-rw-r--r-- | src/Boot/EFI/DcsInfo.efi | bin | 0 -> 29600 bytes | |||
-rw-r--r-- | src/Boot/EFI/DcsInfo32.efi | bin | 0 -> 26496 bytes | |||
-rw-r--r-- | src/Boot/EFI/DcsInt.efi | bin | 493440 -> 847200 bytes | |||
-rw-r--r-- | src/Boot/EFI/DcsInt32.efi | bin | 479520 -> 748160 bytes | |||
-rw-r--r-- | src/Boot/EFI/DcsRe.efi | bin | 18656 -> 18688 bytes | |||
-rw-r--r-- | src/Boot/EFI/DcsRe32.efi | bin | 14688 -> 14752 bytes | |||
-rw-r--r-- | src/Boot/EFI/LegacySpeaker.efi | bin | 2784 -> 2752 bytes | |||
-rw-r--r-- | src/Boot/EFI/LegacySpeaker32.efi | bin | 2528 -> 2496 bytes | |||
-rw-r--r-- | src/Common/BootEncryption.cpp | 14 | ||||
-rw-r--r-- | src/Common/Common.rc | 2 | ||||
-rw-r--r-- | src/Common/Resource.h | 10 |
17 files changed, 22 insertions, 4 deletions
diff --git a/src/Boot/EFI/DcsBml.efi b/src/Boot/EFI/DcsBml.efi Binary files differindex 8775ce4c..7b50f16d 100644 --- a/src/Boot/EFI/DcsBml.efi +++ b/src/Boot/EFI/DcsBml.efi diff --git a/src/Boot/EFI/DcsBml32.efi b/src/Boot/EFI/DcsBml32.efi Binary files differindex 8b3df11d..176172be 100644 --- a/src/Boot/EFI/DcsBml32.efi +++ b/src/Boot/EFI/DcsBml32.efi diff --git a/src/Boot/EFI/DcsBoot.efi b/src/Boot/EFI/DcsBoot.efi Binary files differindex d6703d23..5470dace 100644 --- a/src/Boot/EFI/DcsBoot.efi +++ b/src/Boot/EFI/DcsBoot.efi diff --git a/src/Boot/EFI/DcsBoot32.efi b/src/Boot/EFI/DcsBoot32.efi Binary files differindex 93806f24..e0ae4c1b 100644 --- a/src/Boot/EFI/DcsBoot32.efi +++ b/src/Boot/EFI/DcsBoot32.efi diff --git a/src/Boot/EFI/DcsCfg.efi b/src/Boot/EFI/DcsCfg.efi Binary files differindex 30490532..7d69a534 100644 --- a/src/Boot/EFI/DcsCfg.efi +++ b/src/Boot/EFI/DcsCfg.efi diff --git a/src/Boot/EFI/DcsCfg32.efi b/src/Boot/EFI/DcsCfg32.efi Binary files differindex 4fd3dcae..4be6abc7 100644 --- a/src/Boot/EFI/DcsCfg32.efi +++ b/src/Boot/EFI/DcsCfg32.efi diff --git a/src/Boot/EFI/DcsInfo.efi b/src/Boot/EFI/DcsInfo.efi Binary files differnew file mode 100644 index 00000000..d6eb2c75 --- /dev/null +++ b/src/Boot/EFI/DcsInfo.efi diff --git a/src/Boot/EFI/DcsInfo32.efi b/src/Boot/EFI/DcsInfo32.efi Binary files differnew file mode 100644 index 00000000..e4fcb033 --- /dev/null +++ b/src/Boot/EFI/DcsInfo32.efi diff --git a/src/Boot/EFI/DcsInt.efi b/src/Boot/EFI/DcsInt.efi Binary files differindex 1f22ce10..5759f3ff 100644 --- a/src/Boot/EFI/DcsInt.efi +++ b/src/Boot/EFI/DcsInt.efi diff --git a/src/Boot/EFI/DcsInt32.efi b/src/Boot/EFI/DcsInt32.efi Binary files differindex f0a58235..c49afb10 100644 --- a/src/Boot/EFI/DcsInt32.efi +++ b/src/Boot/EFI/DcsInt32.efi diff --git a/src/Boot/EFI/DcsRe.efi b/src/Boot/EFI/DcsRe.efi Binary files differindex 2208851d..ab7a387c 100644 --- a/src/Boot/EFI/DcsRe.efi +++ b/src/Boot/EFI/DcsRe.efi diff --git a/src/Boot/EFI/DcsRe32.efi b/src/Boot/EFI/DcsRe32.efi Binary files differindex 100a3d8b..7a4cb844 100644 --- a/src/Boot/EFI/DcsRe32.efi +++ b/src/Boot/EFI/DcsRe32.efi diff --git a/src/Boot/EFI/LegacySpeaker.efi b/src/Boot/EFI/LegacySpeaker.efi Binary files differindex 5f49a76a..3095bf7a 100644 --- a/src/Boot/EFI/LegacySpeaker.efi +++ b/src/Boot/EFI/LegacySpeaker.efi diff --git a/src/Boot/EFI/LegacySpeaker32.efi b/src/Boot/EFI/LegacySpeaker32.efi Binary files differindex e92ec411..71e28c6d 100644 --- a/src/Boot/EFI/LegacySpeaker32.efi +++ b/src/Boot/EFI/LegacySpeaker32.efi diff --git a/src/Common/BootEncryption.cpp b/src/Common/BootEncryption.cpp index f7cfc6e1..45ba53d4 100644 --- a/src/Common/BootEncryption.cpp +++ b/src/Common/BootEncryption.cpp @@ -2566,6 +2566,10 @@ namespace VeraCrypt byte *BootMenuLockerImg = MapResource(L"BIN", Is64BitOs()? IDR_EFI_DCSBML: IDR_EFI_DCSBML32, &sizeBootMenuLocker); if (!BootMenuLockerImg) throw ErrorException(L"Out of resource DcsBml", SRC_POS); + DWORD sizeDcsInfo; + byte *DcsInfoImg = MapResource(L"BIN", Is64BitOs()? IDR_EFI_DCSINFO: IDR_EFI_DCSINFO32, &sizeDcsInfo); + if (!DcsInfoImg) + throw ErrorException(L"Out of resource DcsInfo", SRC_POS); finally_do ({ EfiBootInst.DismountBootPartition(); }); EfiBootInst.MountBootPartition(0); @@ -2582,6 +2586,8 @@ namespace VeraCrypt EfiBootInst.SaveFile(L"\\EFI\\VeraCrypt\\DcsCfg.dcs", dcsCfgImg, sizeDcsCfg); EfiBootInst.SaveFile(L"\\EFI\\VeraCrypt\\LegacySpeaker.dcs", LegacySpeakerImg, sizeLegacySpeaker); EfiBootInst.SaveFile(L"\\EFI\\VeraCrypt\\DcsBml.dcs", BootMenuLockerImg, sizeBootMenuLocker); + EfiBootInst.SaveFile(L"\\EFI\\VeraCrypt\\DcsInfo.dcs", DcsInfoImg, sizeDcsInfo); + EfiBootInst.DelFile(L"\\EFI\\VeraCrypt\\PlatformInfo"); EfiBootInst.SetStartExec(L"VeraCrypt BootLoader (DcsBoot)", L"\\EFI\\VeraCrypt\\DcsBoot.efi"); // move configuration file from old location (if it exists) to new location @@ -2766,6 +2772,10 @@ namespace VeraCrypt byte *DcsRescueImg = MapResource(L"BIN", Is64BitOs()? IDR_EFI_DCSRE: IDR_EFI_DCSRE32, &sizeDcsRescue); if (!DcsRescueImg) throw ParameterIncorrect (SRC_POS); + DWORD sizeDcsInfo; + byte *DcsInfoImg = MapResource(L"BIN", Is64BitOs()? IDR_EFI_DCSINFO: IDR_EFI_DCSINFO32, &sizeDcsInfo); + if (!DcsInfoImg) + throw ErrorException(L"Out of resource DcsInfo", SRC_POS); char szTmpPath[MAX_PATH + 1], szTmpFilePath[MAX_PATH + 1]; if (!GetTempPathA (MAX_PATH, szTmpPath)) @@ -2794,6 +2804,8 @@ namespace VeraCrypt throw ParameterIncorrect (SRC_POS); if (!ZipAdd (z, "EFI/VeraCrypt/LegacySpeaker.dcs", LegacySpeakerImg, sizeLegacySpeaker)) throw ParameterIncorrect (SRC_POS); + if (!ZipAdd (z, "EFI/VeraCrypt/DcsInfo.dcs", DcsInfoImg, sizeDcsInfo)) + throw ParameterIncorrect (SRC_POS); Buffer volHeader(TC_BOOT_ENCRYPTION_VOLUME_HEADER_SIZE); @@ -3532,6 +3544,8 @@ namespace VeraCrypt EfiBootInst.DelFile(L"\\EFI\\VeraCrypt\\LegacySpeaker.dcs"); EfiBootInst.DelFile(L"\\EFI\\VeraCrypt\\DcsBml.dcs"); EfiBootInst.DelFile(L"\\EFI\\VeraCrypt\\DcsBoot"); + EfiBootInst.DelFile(L"\\EFI\\VeraCrypt\\DcsInfo.dcs"); + EfiBootInst.DelFile(L"\\EFI\\VeraCrypt\\PlatformInfo"); EfiBootInst.DelFile(L"\\EFI\\VeraCrypt\\DcsProp"); EfiBootInst.DelDir (L"\\EFI\\VeraCrypt"); } diff --git a/src/Common/Common.rc b/src/Common/Common.rc index 8e050cea..91c77a58 100644 --- a/src/Common/Common.rc +++ b/src/Common/Common.rc @@ -544,6 +544,8 @@ IDR_EFI_DCSCFG32 BIN "..\\Boot\\EFI\\DcsCfg32.efi" IDR_EFI_LEGACYSPEAKER32 BIN "..\\Boot\\EFI\\LegacySpeaker32.efi" IDR_EFI_DCSBML32 BIN "..\\Boot\\EFI\\DcsBml32.efi" IDR_EFI_DCSRE32 BIN "..\\Boot\\EFI\\DcsRe32.efi" +IDR_EFI_DCSINFO BIN "..\\Boot\\EFI\\DcsInfo.efi" +IDR_EFI_DCSINFO32 BIN "..\\Boot\\EFI\\DcsInfo32.efi" ///////////////////////////////////////////////////////////////////////////// // diff --git a/src/Common/Resource.h b/src/Common/Resource.h index b8cd3d76..0862a05d 100644 --- a/src/Common/Resource.h +++ b/src/Common/Resource.h @@ -71,14 +71,16 @@ #define IDR_EFI_DCSINT 567 #define IDR_EFI_DCSCFG 568 #define IDR_EFI_LEGACYSPEAKER 569 -#define IDR_EFI_DCSBML 570 -#define IDR_EFI_DCSRE 571 +#define IDR_EFI_DCSBML 570 +#define IDR_EFI_DCSRE 571 #define IDR_EFI_DCSBOOT32 572 #define IDR_EFI_DCSINT32 573 #define IDR_EFI_DCSCFG32 574 #define IDR_EFI_LEGACYSPEAKER32 575 -#define IDR_EFI_DCSBML32 576 -#define IDR_EFI_DCSRE32 577 +#define IDR_EFI_DCSBML32 576 +#define IDR_EFI_DCSRE32 577 +#define IDR_EFI_DCSINFO 578 +#define IDR_EFI_DCSINFO32 579 #define IDC_HW_AES_LABEL_LINK 5000 #define IDC_HW_AES 5001 #define IDC_PARALLELIZATION_LABEL_LINK 5002 |