FltRollbackEnlistment function (fltkernel.h)

The FltRollbackEnlistment routine rolls back or aborts a transaction on behalf of a minifilter driver.

Syntax

NTSTATUS FLTAPI FltRollbackEnlistment(
  [in]           PFLT_INSTANCE Instance,
  [in]           PKTRANSACTION Transaction,
  [in, optional] PFLT_CONTEXT  TransactionContext
);

Parameters

[in] Instance

Opaque instance pointer for the caller.

[in] Transaction

Opaque transaction pointer for the transaction.

[in, optional] TransactionContext

Pointer to the minifilter driver's transaction context.

Return value

FltRollbackEnlistment returns STATUS_SUCCESS or an appropriate NTSTATUS value, such as one of the following:

Return code Description
STATUS_NOT_FOUND
The minifilter driver did not set a context on the transaction. This is an error code.
STATUS_TRANSACTION_REQUEST_NOT_VALID
The transaction rollback request is not allowed for this enlistment. This is an error code.

Remarks

A minifilter driver that is enlisted in a transaction can call FltRollbackEnlistment to roll back or abort the transaction.

To enlist in a transaction, call FltEnlistInTransaction.

To allocate a new transaction context, call FltAllocateContext.

To retrieve a transaction context, call FltGetTransactionContext.

To delete a transaction context, call FltDeleteTransactionContext or FltDeleteContext.

To set a transaction context, call FltSetTransactionContext.

Requirements

Requirement Value
Minimum supported client This routine is available on Windows Vista and later.
Target Platform Universal
Header fltkernel.h (include Fltkernel.h)
Library FltMgr.lib
DLL Fltmgr.sys
IRQL <= APC_LEVEL

See also

FltAllocateContext

FltCommitComplete

FltDeleteContext

FltDeleteTransactionContext

FltEnlistInTransaction

FltGetTransactionContext

FltPrePrepareComplete

FltPrepareComplete

FltReleaseContext

FltRollbackComplete

FltSetTransactionContext