1
0
mirror of https://github.com/veracrypt/VeraCrypt.git synced 2025-11-11 02:58:02 -06:00

Windows: correctly handle SEH exceptions during self-tests in order to disable CPU extended features in such case.

This commit is contained in:
Mounir IDRASSI
2017-07-04 11:19:53 +02:00
parent 0358eb6c71
commit 88cc8a00f4
6 changed files with 91 additions and 54 deletions

View File

@@ -1156,20 +1156,20 @@ static BOOL HwEncryptionDisabled = FALSE;
BOOL IsAesHwCpuSupported ()
{
#ifdef TC_WINDOWS_BOOT_AES
static BOOL state = FALSE;
static BOOL stateValid = FALSE;
if (!stateValid)
{
#ifdef TC_WINDOWS_BOOT_AES
state = is_aes_hw_cpu_supported() ? TRUE : FALSE;
#else
state = g_hasAESNI ? TRUE : FALSE;
#endif
stateValid = TRUE;
}
return state && !HwEncryptionDisabled;
#else
return (HasAESNI() && !HwEncryptionDisabled)? TRUE : FALSE;
#endif
}
void EnableHwEncryption (BOOL enable)