VeraCrypt
aboutsummaryrefslogtreecommitdiff
path: root/src/Format/FormatCom.cpp
diff options
context:
space:
mode:
authorMounir IDRASSI <mounir.idrassi@idrix.fr>2016-08-09 23:26:15 +0200
committerMounir IDRASSI <mounir.idrassi@idrix.fr>2016-08-15 01:09:13 +0200
commit07ee8c10691d05e4e290ecdaa634ad5311b3cbb1 (patch)
tree436fc236acefb75237622da0e4cf7f3f05f7f48b /src/Format/FormatCom.cpp
parent246233c40262c5be2edfa916cf841dd4bce6598e (diff)
downloadVeraCrypt-07ee8c10691d05e4e290ecdaa634ad5311b3cbb1.tar.gz
VeraCrypt-07ee8c10691d05e4e290ecdaa634ad5311b3cbb1.zip
Windows: Implement support for EFI system encryption in Windows GUI.
Diffstat (limited to 'src/Format/FormatCom.cpp')
-rw-r--r--src/Format/FormatCom.cpp44
1 files changed, 42 insertions, 2 deletions
diff --git a/src/Format/FormatCom.cpp b/src/Format/FormatCom.cpp
index 96e3e3cd..2aa5cea9 100644
--- a/src/Format/FormatCom.cpp
+++ b/src/Format/FormatCom.cpp
@@ -3,7 +3,7 @@
Copyright (c) 2008-2012 TrueCrypt Developers Association and which is governed
by the TrueCrypt License 3.0.
- Modifications and additions to the original source code (contained in this file)
+ Modifications and additions to the original source code (contained in this file)
and all other portions of this file are Copyright (c) 2013-2016 IDRIX
and are governed by the Apache License 2.0 the full text of which is
contained in the file License.txt included in VeraCrypt binary and source
@@ -74,7 +74,7 @@ public:
AddRef ();
return S_OK;
}
-
+
virtual DWORD STDMETHODCALLTYPE CallDriver (DWORD ioctl, BSTR input, BSTR *output)
{
return BaseCom::CallDriver (ioctl, input, output);
@@ -137,6 +137,46 @@ public:
return ::FormatFs (driveNo, clusterSize, fsType);
}
+ virtual DWORD STDMETHODCALLTYPE GetFileSize (BSTR filePath, unsigned __int64 *pSize)
+ {
+ return BaseCom::GetFileSize (filePath, pSize);
+ }
+
+ virtual DWORD STDMETHODCALLTYPE DeviceIoControl (BOOL readOnly, BOOL device, BSTR filePath, DWORD dwIoControlCode, BSTR input, BSTR *output)
+ {
+ return BaseCom::DeviceIoControl (readOnly, device, filePath, dwIoControlCode, input, output);
+ }
+
+ virtual DWORD STDMETHODCALLTYPE InstallEfiBootLoader (BOOL preserveUserConfig, BOOL hiddenOSCreation, int pim, int hashAlg)
+ {
+ return BaseCom::InstallEfiBootLoader (preserveUserConfig, hiddenOSCreation, pim, hashAlg);
+ }
+
+ virtual DWORD STDMETHODCALLTYPE BackupEfiSystemLoader ()
+ {
+ return BaseCom::BackupEfiSystemLoader ();
+ }
+
+ virtual DWORD STDMETHODCALLTYPE RestoreEfiSystemLoader ()
+ {
+ return BaseCom::RestoreEfiSystemLoader ();
+ }
+
+ virtual DWORD STDMETHODCALLTYPE GetEfiBootDeviceNumber (BSTR* pSdn)
+ {
+ return BaseCom::GetEfiBootDeviceNumber (pSdn);
+ }
+
+ virtual DWORD STDMETHODCALLTYPE ReadEfiConfig (BSTR* pContent, DWORD *pcbRead)
+ {
+ return BaseCom::ReadEfiConfig (pContent, pcbRead);
+ }
+
+ virtual DWORD STDMETHODCALLTYPE WriteEfiBootSectorUserConfig (DWORD userConfig, BSTR customUserMessage, int pim, int hashAlg)
+ {
+ return BaseCom::WriteEfiBootSectorUserConfig (userConfig, customUserMessage,pim, hashAlg);
+ }
+
protected:
DWORD MessageThreadId;
LONG RefCount;