diff options
author | Mounir IDRASSI <mounir.idrassi@idrix.fr> | 2016-08-09 23:26:15 +0200 |
---|---|---|
committer | Mounir IDRASSI <mounir.idrassi@idrix.fr> | 2016-08-15 01:09:13 +0200 |
commit | 07ee8c10691d05e4e290ecdaa634ad5311b3cbb1 (patch) | |
tree | 436fc236acefb75237622da0e4cf7f3f05f7f48b /src/Common/BaseCom.h | |
parent | 246233c40262c5be2edfa916cf841dd4bce6598e (diff) | |
download | VeraCrypt-07ee8c10691d05e4e290ecdaa634ad5311b3cbb1.tar.gz VeraCrypt-07ee8c10691d05e4e290ecdaa634ad5311b3cbb1.zip |
Windows: Implement support for EFI system encryption in Windows GUI.
Diffstat (limited to 'src/Common/BaseCom.h')
-rw-r--r-- | src/Common/BaseCom.h | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/src/Common/BaseCom.h b/src/Common/BaseCom.h index a5b27473..b103ad59 100644 --- a/src/Common/BaseCom.h +++ b/src/Common/BaseCom.h @@ -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 @@ -20,11 +20,11 @@ class TrueCryptFactory : public IClassFactory { public: - TrueCryptFactory (DWORD messageThreadId) : + TrueCryptFactory (DWORD messageThreadId) : RefCount (1), ServerLockCount (0), MessageThreadId (messageThreadId) { } ~TrueCryptFactory () { } - + virtual ULONG STDMETHODCALLTYPE AddRef () { return InterlockedIncrement (&RefCount) - 1; @@ -53,7 +53,7 @@ public: AddRef (); return S_OK; } - + virtual HRESULT STDMETHODCALLTYPE CreateInstance (IUnknown *pUnkOuter, REFIID riid, void **ppvObject) { if (pUnkOuter != NULL) @@ -110,6 +110,14 @@ public: static DWORD RegisterSystemFavoritesService (BOOL registerService); static DWORD SetDriverServiceStartType (DWORD startType); static DWORD WriteLocalMachineRegistryDwordValue (BSTR keyPath, BSTR valueName, DWORD value); + static DWORD GetFileSize (BSTR filePath, unsigned __int64 *pSize); + static DWORD DeviceIoControl (BOOL readOnly, BOOL device, BSTR filePath, DWORD dwIoControlCode, BSTR input, BSTR *output); + static DWORD InstallEfiBootLoader (BOOL preserveUserConfig, BOOL hiddenOSCreation, int pim, int hashAlg); + static DWORD BackupEfiSystemLoader (); + static DWORD RestoreEfiSystemLoader (); + static DWORD GetEfiBootDeviceNumber (BSTR* pSdn); + static DWORD ReadEfiConfig (BSTR* pContent, DWORD *pcbRead); + static DWORD WriteEfiBootSectorUserConfig (DWORD userConfig, BSTR customUserMessage, int pim, int hashAlg); }; |