diff options
author | Mounir IDRASSI <mounir.idrassi@idrix.fr> | 2019-12-10 00:44:47 +0100 |
---|---|---|
committer | Mounir IDRASSI <mounir.idrassi@idrix.fr> | 2019-12-10 00:51:34 +0100 |
commit | f9d95ef2c84ebc61e4e0c77f8b9f054c65abd7cd (patch) | |
tree | 0f0dc8c824a639577a8e8f2d7599ebcad4711ac9 /src/Format | |
parent | 5eaa204d83a1d9867094c14b4a35f310f27f6c65 (diff) | |
download | VeraCrypt-f9d95ef2c84ebc61e4e0c77f8b9f054c65abd7cd.tar.gz VeraCrypt-f9d95ef2c84ebc61e4e0c77f8b9f054c65abd7cd.zip |
Windows: Add switch /FastCreateFile for VeraCrypt Format.exe to speedup creation of large file container if quick format is selected. This switch comes with security issues since it will embed existing content on disk into the file container which may expose sensitive content to an attacker who has access to the file container.
Diffstat (limited to 'src/Format')
-rw-r--r-- | src/Format/Tcformat.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/Format/Tcformat.c b/src/Format/Tcformat.c index 013e27ca..002b6c5c 100644 --- a/src/Format/Tcformat.c +++ b/src/Format/Tcformat.c @@ -250,6 +250,7 @@ int CmdVolumeFilesystem = FILESYS_NONE; unsigned __int64 CmdVolumeFileSize = 0; BOOL CmdSparseFileSwitch = FALSE; BOOL CmdQuickFormat = FALSE; +BOOL CmdFastCreateFile = FALSE; BOOL bForceOperation = FALSE; @@ -282,6 +283,7 @@ BOOL bDisplayPoolContents = TRUE; volatile BOOL bSparseFileSwitch = FALSE; volatile BOOL quickFormat = FALSE; +volatile BOOL fastCreateFile = FALSE; volatile BOOL dynamicFormat = FALSE; /* this variable represents the sparse file flag. */ volatile int fileSystem = FILESYS_NONE; volatile int clusterSize = 0; @@ -2635,6 +2637,7 @@ static void __cdecl volTransformThreadFunction (void *hwndDlgArg) volParams->clusterSize = clusterSize; volParams->sparseFileSwitch = dynamicFormat; volParams->quickFormat = quickFormat; + volParams->fastCreateFile = fastCreateFile; volParams->sectorSize = GetFormatSectorSize(); volParams->realClusterSize = &realClusterSize; volParams->password = &volumePassword; @@ -6234,6 +6237,7 @@ BOOL CALLBACK MainDialogProc (HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lPa } quickFormat = CmdQuickFormat; + fastCreateFile = CmdFastCreateFile; dynamicFormat = CmdSparseFileSwitch; if (!GetDiskFreeSpaceEx (root, &free, 0, 0)) @@ -8994,6 +8998,7 @@ void ExtractCommandLine (HWND hwndDlg, wchar_t *lpszCommandLine) OptionForce, OptionNoSizeCheck, OptionQuickFormat, + OptionFastCreateFile, }; argument args[]= @@ -9016,6 +9021,7 @@ void ExtractCommandLine (HWND hwndDlg, wchar_t *lpszCommandLine) { OptionForce, L"/force", NULL, FALSE }, { OptionNoSizeCheck, L"/nosizecheck", NULL, FALSE }, { OptionQuickFormat, L"/quick", NULL, FALSE }, + { OptionFastCreateFile, L"/fastcreatefile", NULL, FALSE }, // Internal { CommandResumeSysEncLogOn, L"/acsysenc", L"/a", TRUE }, @@ -9372,6 +9378,10 @@ void ExtractCommandLine (HWND hwndDlg, wchar_t *lpszCommandLine) CmdQuickFormat = TRUE; break; + case OptionFastCreateFile: + CmdFastCreateFile = TRUE; + break; + case OptionHistory: { wchar_t szTmp[8] = {0}; |