VeraCrypt
aboutsummaryrefslogtreecommitdiff
path: root/DcsBoot
diff options
context:
space:
mode:
authorkavsrf <kavsrf@gmail.com>2017-01-23 15:30:22 +0300
committerMounir IDRASSI <mounir.idrassi@idrix.fr>2017-06-05 17:36:52 +0200
commitf648e29d050cab362cc660c1a5c5109182028768 (patch)
treeda3a3ce3f3b03edee797c4606a1cd1227cd6eb95 /DcsBoot
parentd37d6d681061fdefc2a909b5975b40b604a27c62 (diff)
downloadVeraCrypt-DCS-f648e29d050cab362cc660c1a5c5109182028768.tar.gz
VeraCrypt-DCS-f648e29d050cab362cc660c1a5c5109182028768.zip
DcsInfo added
DcsBoot is driver now (to support DriverOrder list)
Diffstat (limited to 'DcsBoot')
-rw-r--r--DcsBoot/DcsBoot.c8
-rw-r--r--DcsBoot/DcsBoot.inf5
2 files changed, 11 insertions, 2 deletions
diff --git a/DcsBoot/DcsBoot.c b/DcsBoot/DcsBoot.c
index bccf216..60c8eed 100644
--- a/DcsBoot/DcsBoot.c
+++ b/DcsBoot/DcsBoot.c
@@ -16,6 +16,7 @@ https://opensource.org/licenses/LGPL-3.0
#include <Library/CommonLib.h>
#include <Library/UefiBootServicesTableLib.h>
#include <Library/DevicePathLib.h>
+#include "DcsConfig.h"
EFI_GUID ImagePartGuid;
EFI_GUID *gEfiExecPartGuid = &ImagePartGuid;
@@ -41,12 +42,19 @@ DcsBootMain(
EFI_STATUS res;
UINTN len;
UINT32 attr;
+ int drvInst;
InitBio();
res = InitFS();
if (EFI_ERROR(res)) {
ERR_PRINT(L"InitFS %r\n", res);
}
+ drvInst = ConfigReadInt("DcsDriver", 0);
+
+ if (!FileExist(NULL, L"\\EFI\\VeraCrypt\\PlatformInfo") &&
+ !FileExist(NULL, L"\\EFI\\VeraCrypt\\DcsInfo.dcs")) {
+ res = EfiExec(NULL, L"\\EFI\\VeraCrypt\\DcsInfo.dcs");
+ }
// Load all drivers
res = EfiExec(NULL, L"\\EFI\\VeraCrypt\\LegacySpeaker.dcs");
diff --git a/DcsBoot/DcsBoot.inf b/DcsBoot/DcsBoot.inf
index 9459e92..14d8d0d 100644
--- a/DcsBoot/DcsBoot.inf
+++ b/DcsBoot/DcsBoot.inf
@@ -16,7 +16,7 @@
INF_VERSION = 0x00010006
BASE_NAME = DcsBoot
FILE_GUID = DE8AB4B2-EB47-44E1-A4D7-1001E5E9F0A5
- MODULE_TYPE = UEFI_APPLICATION
+ MODULE_TYPE = UEFI_DRIVER
VERSION_STRING = 1.0
ENTRY_POINT = DcsBootMain
@@ -36,11 +36,12 @@
DcsPkg/DcsPkg.dec
[LibraryClasses]
- UefiApplicationEntryPoint
+ UefiDriverEntryPoint
UefiLib
BaseLib
MemoryAllocationLib
CommonLib
+ VeraCryptLib
[Guids]
gEfiGlobalVariableGuid