mirror of
https://github.com/veracrypt/VeraCrypt.git
synced 2025-11-11 19:08:26 -06:00
Windows: enhancements to the mechanism preserving file timestamps, especially for keyfiles.
This commit is contained in:
@@ -350,6 +350,19 @@ begin_format:
|
||||
nStatus = ERR_OS_ERROR;
|
||||
goto error;
|
||||
}
|
||||
else if (volParams->hiddenVol && bPreserveTimestamp)
|
||||
{
|
||||
// ensure that Last Access and Last Write timestamps are not modified
|
||||
ftLastAccessTime.dwHighDateTime = 0xFFFFFFFF;
|
||||
ftLastAccessTime.dwLowDateTime = 0xFFFFFFFF;
|
||||
|
||||
SetFileTime (dev, NULL, &ftLastAccessTime, NULL);
|
||||
|
||||
if (GetFileTime ((HANDLE) dev, &ftCreationTime, &ftLastAccessTime, &ftLastWriteTime) == 0)
|
||||
bTimeStampValid = FALSE;
|
||||
else
|
||||
bTimeStampValid = TRUE;
|
||||
}
|
||||
|
||||
DisableFileCompression (dev);
|
||||
|
||||
@@ -380,14 +393,6 @@ begin_format:
|
||||
}
|
||||
}
|
||||
|
||||
if (volParams->hiddenVol && !volParams->bDevice && bPreserveTimestamp)
|
||||
{
|
||||
if (GetFileTime ((HANDLE) dev, &ftCreationTime, &ftLastAccessTime, &ftLastWriteTime) == 0)
|
||||
bTimeStampValid = FALSE;
|
||||
else
|
||||
bTimeStampValid = TRUE;
|
||||
}
|
||||
|
||||
if (volParams->hwndDlg && volParams->bGuiMode) KillTimer (volParams->hwndDlg, TIMER_ID_RANDVIEW);
|
||||
|
||||
/* Volume header */
|
||||
|
||||
Reference in New Issue
Block a user