diff options
Diffstat (limited to 'src/Common/EncryptionThreadPool.c')
-rw-r--r-- | src/Common/EncryptionThreadPool.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/Common/EncryptionThreadPool.c b/src/Common/EncryptionThreadPool.c index 62b2cae8..79f1c890 100644 --- a/src/Common/EncryptionThreadPool.c +++ b/src/Common/EncryptionThreadPool.c @@ -61,61 +61,61 @@ typedef WORD (WINAPI* GetActiveProcessorGroupCountFn)(); typedef DWORD (WINAPI *GetActiveProcessorCountFn)( WORD GroupNumber ); #endif // !DEVICE_DRIVER typedef enum { WorkItemFree, WorkItemReady, WorkItemBusy } WorkItemState; typedef struct EncryptionThreadPoolWorkItemStruct { WorkItemState State; EncryptionThreadPoolWorkType Type; TC_EVENT ItemCompletedEvent; struct EncryptionThreadPoolWorkItemStruct *FirstFragment; LONG OutstandingFragmentCount; union { struct { PCRYPTO_INFO CryptoInfo; - byte *Data; + uint8 *Data; UINT64_STRUCT StartUnitNo; uint32 UnitCount; } Encryption; struct { TC_EVENT *CompletionEvent; LONG *CompletionFlag; char *DerivedKey; int IterationCount; TC_EVENT *NoOutstandingWorkItemEvent; LONG *OutstandingWorkItemCount; char *Password; int PasswordLength; int Pkcs5Prf; char *Salt; } KeyDerivation; struct { TC_EVENT *KeyDerivationCompletedEvent; TC_EVENT *NoOutstandingWorkItemEvent; LONG *outstandingWorkItemCount; void* keyInfoBuffer; int keyInfoBufferSize; void* keyDerivationWorkItems; int keyDerivationWorkItemsSize; @@ -579,67 +579,67 @@ void EncryptionThreadPoolBeginReadVolumeHeaderFinalization (TC_EVENT *keyDerivat if (!ThreadPoolRunning) TC_THROW_FATAL_EXCEPTION; TC_ACQUIRE_MUTEX (&EnqueueMutex); workItem = &WorkItemQueue[EnqueuePosition++]; if (EnqueuePosition >= ThreadQueueSize) EnqueuePosition = 0; while (GetWorkItemState (workItem) != WorkItemFree) { TC_WAIT_EVENT (WorkItemCompletedEvent); } workItem->Type = ReadVolumeHeaderFinalizationWork; workItem->ReadVolumeHeaderFinalization.NoOutstandingWorkItemEvent = noOutstandingWorkItemEvent; workItem->ReadVolumeHeaderFinalization.KeyDerivationCompletedEvent = keyDerivationCompletedEvent; workItem->ReadVolumeHeaderFinalization.keyInfoBuffer = keyInfoBuffer; workItem->ReadVolumeHeaderFinalization.keyInfoBufferSize = keyInfoBufferSize; workItem->ReadVolumeHeaderFinalization.keyDerivationWorkItems = keyDerivationWorkItems; workItem->ReadVolumeHeaderFinalization.keyDerivationWorkItemsSize = keyDerivationWorkItemsSize; workItem->ReadVolumeHeaderFinalization.outstandingWorkItemCount = outstandingWorkItemCount; SetWorkItemState (workItem, WorkItemReady); TC_SET_EVENT (WorkItemReadyEvent); TC_RELEASE_MUTEX (&EnqueueMutex); } -void EncryptionThreadPoolDoWork (EncryptionThreadPoolWorkType type, byte *data, const UINT64_STRUCT *startUnitNo, uint32 unitCount, PCRYPTO_INFO cryptoInfo) +void EncryptionThreadPoolDoWork (EncryptionThreadPoolWorkType type, uint8 *data, const UINT64_STRUCT *startUnitNo, uint32 unitCount, PCRYPTO_INFO cryptoInfo) { uint32 fragmentCount; uint32 unitsPerFragment; uint32 remainder; - byte *fragmentData; + uint8 *fragmentData; uint64 fragmentStartUnitNo; EncryptionThreadPoolWorkItem *workItem; EncryptionThreadPoolWorkItem *firstFragmentWorkItem; if (unitCount == 0) return; if (!ThreadPoolRunning || unitCount == 1) { switch (type) { case DecryptDataUnitsWork: DecryptDataUnitsCurrentThreadEx (data, startUnitNo, unitCount, cryptoInfo); break; case EncryptDataUnitsWork: EncryptDataUnitsCurrentThreadEx (data, startUnitNo, unitCount, cryptoInfo); break; default: TC_THROW_FATAL_EXCEPTION; } return; } if (unitCount <= ThreadCount) { fragmentCount = unitCount; |