VeraCrypt
aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/Boot/EFI/DcsBml.efibin8544 -> 8512 bytes
-rw-r--r--src/Boot/EFI/DcsBml32.efibin6912 -> 6880 bytes
-rw-r--r--src/Boot/EFI/DcsBoot.efibin12704 -> 20352 bytes
-rw-r--r--src/Boot/EFI/DcsBoot32.efibin10080 -> 16832 bytes
-rw-r--r--src/Boot/EFI/DcsCfg.efibin523264 -> 882656 bytes
-rw-r--r--src/Boot/EFI/DcsCfg32.efibin492928 -> 764224 bytes
-rw-r--r--src/Boot/EFI/DcsInfo.efibin0 -> 29600 bytes
-rw-r--r--src/Boot/EFI/DcsInfo32.efibin0 -> 26496 bytes
-rw-r--r--src/Boot/EFI/DcsInt.efibin493440 -> 847200 bytes
-rw-r--r--src/Boot/EFI/DcsInt32.efibin479520 -> 748160 bytes
-rw-r--r--src/Boot/EFI/DcsRe.efibin18656 -> 18688 bytes
-rw-r--r--src/Boot/EFI/DcsRe32.efibin14688 -> 14752 bytes
-rw-r--r--src/Boot/EFI/LegacySpeaker.efibin2784 -> 2752 bytes
-rw-r--r--src/Boot/EFI/LegacySpeaker32.efibin2528 -> 2496 bytes
-rw-r--r--src/Common/BootEncryption.cpp14
-rw-r--r--src/Common/Common.rc2
-rw-r--r--src/Common/Resource.h10
17 files changed, 22 insertions, 4 deletions
diff --git a/src/Boot/EFI/DcsBml.efi b/src/Boot/EFI/DcsBml.efi
index 8775ce4c..7b50f16d 100644
--- a/src/Boot/EFI/DcsBml.efi
+++ b/src/Boot/EFI/DcsBml.efi
Binary files differ
diff --git a/src/Boot/EFI/DcsBml32.efi b/src/Boot/EFI/DcsBml32.efi
index 8b3df11d..176172be 100644
--- a/src/Boot/EFI/DcsBml32.efi
+++ b/src/Boot/EFI/DcsBml32.efi
Binary files differ
diff --git a/src/Boot/EFI/DcsBoot.efi b/src/Boot/EFI/DcsBoot.efi
index d6703d23..5470dace 100644
--- a/src/Boot/EFI/DcsBoot.efi
+++ b/src/Boot/EFI/DcsBoot.efi
Binary files differ
diff --git a/src/Boot/EFI/DcsBoot32.efi b/src/Boot/EFI/DcsBoot32.efi
index 93806f24..e0ae4c1b 100644
--- a/src/Boot/EFI/DcsBoot32.efi
+++ b/src/Boot/EFI/DcsBoot32.efi
Binary files differ
diff --git a/src/Boot/EFI/DcsCfg.efi b/src/Boot/EFI/DcsCfg.efi
index 30490532..7d69a534 100644
--- a/src/Boot/EFI/DcsCfg.efi
+++ b/src/Boot/EFI/DcsCfg.efi
Binary files differ
diff --git a/src/Boot/EFI/DcsCfg32.efi b/src/Boot/EFI/DcsCfg32.efi
index 4fd3dcae..4be6abc7 100644
--- a/src/Boot/EFI/DcsCfg32.efi
+++ b/src/Boot/EFI/DcsCfg32.efi
Binary files differ
diff --git a/src/Boot/EFI/DcsInfo.efi b/src/Boot/EFI/DcsInfo.efi
new file mode 100644
index 00000000..d6eb2c75
--- /dev/null
+++ b/src/Boot/EFI/DcsInfo.efi
Binary files differ
diff --git a/src/Boot/EFI/DcsInfo32.efi b/src/Boot/EFI/DcsInfo32.efi
new file mode 100644
index 00000000..e4fcb033
--- /dev/null
+++ b/src/Boot/EFI/DcsInfo32.efi
Binary files differ
diff --git a/src/Boot/EFI/DcsInt.efi b/src/Boot/EFI/DcsInt.efi
index 1f22ce10..5759f3ff 100644
--- a/src/Boot/EFI/DcsInt.efi
+++ b/src/Boot/EFI/DcsInt.efi
Binary files differ
diff --git a/src/Boot/EFI/DcsInt32.efi b/src/Boot/EFI/DcsInt32.efi
index f0a58235..c49afb10 100644
--- a/src/Boot/EFI/DcsInt32.efi
+++ b/src/Boot/EFI/DcsInt32.efi
Binary files differ
diff --git a/src/Boot/EFI/DcsRe.efi b/src/Boot/EFI/DcsRe.efi
index 2208851d..ab7a387c 100644
--- a/src/Boot/EFI/DcsRe.efi
+++ b/src/Boot/EFI/DcsRe.efi
Binary files differ
diff --git a/src/Boot/EFI/DcsRe32.efi b/src/Boot/EFI/DcsRe32.efi
index 100a3d8b..7a4cb844 100644
--- a/src/Boot/EFI/DcsRe32.efi
+++ b/src/Boot/EFI/DcsRe32.efi
Binary files differ
diff --git a/src/Boot/EFI/LegacySpeaker.efi b/src/Boot/EFI/LegacySpeaker.efi
index 5f49a76a..3095bf7a 100644
--- a/src/Boot/EFI/LegacySpeaker.efi
+++ b/src/Boot/EFI/LegacySpeaker.efi
Binary files differ
diff --git a/src/Boot/EFI/LegacySpeaker32.efi b/src/Boot/EFI/LegacySpeaker32.efi
index e92ec411..71e28c6d 100644
--- a/src/Boot/EFI/LegacySpeaker32.efi
+++ b/src/Boot/EFI/LegacySpeaker32.efi
Binary files differ
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