mirror of
https://github.com/veracrypt/VeraCrypt.git
synced 2025-11-11 11:08:02 -06:00
Windows: clear DeriveKeyWork work item only if they have correct type
This commit is contained in:
@@ -517,9 +517,12 @@ void EncryptionThreadPoolStop ()
|
|||||||
for (i = 0; i < sizeof (WorkItemQueue) / sizeof (WorkItemQueue[0]); ++i)
|
for (i = 0; i < sizeof (WorkItemQueue) / sizeof (WorkItemQueue[0]); ++i)
|
||||||
{
|
{
|
||||||
#if !defined(DEVICE_DRIVER)
|
#if !defined(DEVICE_DRIVER)
|
||||||
burn (WorkItemQueue[i].KeyDerivation.Password, sizeof(WorkItemQueue[i].KeyDerivation.Password));
|
if (WorkItemQueue[i].Type == DeriveKeyWork)
|
||||||
burn (WorkItemQueue[i].KeyDerivation.Salt, sizeof(WorkItemQueue[i].KeyDerivation.Salt));
|
{
|
||||||
VirtualUnlock (&WorkItemQueue[i].KeyDerivation, sizeof (WorkItemQueue[i].KeyDerivation));
|
burn (WorkItemQueue[i].KeyDerivation.Password, sizeof(WorkItemQueue[i].KeyDerivation.Password));
|
||||||
|
burn (WorkItemQueue[i].KeyDerivation.Salt, sizeof(WorkItemQueue[i].KeyDerivation.Salt));
|
||||||
|
VirtualUnlock (&WorkItemQueue[i].KeyDerivation, sizeof (WorkItemQueue[i].KeyDerivation));
|
||||||
|
}
|
||||||
#endif
|
#endif
|
||||||
if (WorkItemQueue[i].ItemCompletedEvent)
|
if (WorkItemQueue[i].ItemCompletedEvent)
|
||||||
CloseHandle (WorkItemQueue[i].ItemCompletedEvent);
|
CloseHandle (WorkItemQueue[i].ItemCompletedEvent);
|
||||||
|
|||||||
Reference in New Issue
Block a user