BCryptProcessMultiOperations function (bcrypt.h)

The BCryptProcessMultiOperations function processes a sequence of operations on a multi-object state.


NTSTATUS BCryptProcessMultiOperations(
  [in, out] BCRYPT_HANDLE               hObject,
  [in]      BCRYPT_MULTI_OPERATION_TYPE operationType,
  [in]      PVOID                       pOperations,
  [in]      ULONG                       cbOperations,
  [in]      ULONG                       dwFlags


[in, out] hObject

A handle to a multi-object state, such as one created by the BCryptCreateMultiHash function.

[in] operationType

A BCRYPT_OPERATION_TYPE_* value. Currently the only defined value is BCRYPT_OPERATION_TYPE_HASH. This value identifies the hObject parameter as a multi-hash object and the pOperations pointer as pointing to an array of BCRYPT_MULTI_HASH_OPERATION elements.

[in] pOperations

A pointer to an array of operation command structures. For hashing, it is a pointer to an array of BCRYPT_MULTI_HASH_OPERATION structures.

[in] cbOperations

The size, in bytes, of the pOperations array.

[in] dwFlags

Specify a value of zero (0).

Return value



Each element of the pOperations array contains instructions for a particular computation to be performed on a single element of the multi-object state. The functional behavior of BCryptProcessMultiOperations is equivalent to performing, for each element in the multi-object state, the computations specified in the operations array for that element, one at a time, in order.

The relative order of two operations that operate on different elements of the array is not guaranteed. If an output buffer overlaps an input or output buffer the result is not deterministic.


Minimum supported client Windows 8.1 Update [desktop apps | UWP apps]
Minimum supported server Windows Server 2008 Update [desktop apps | UWP apps]
Target Platform Windows
Header bcrypt.h
Library Bcrypt.lib
DLL Bcrypt.dll

See also