PFLT_CONTEXT_FREE_CALLBACK routine

A minifilter can register a routine of type PFLT_CONTEXT_FREE_CALLBACK as the minifilter driver's ContextFreeCallback routine.

Syntax


PFLT_CONTEXT_FREE_CALLBACK ContextFreeCallback;

VOID ContextFreeCallback(
  _In_  PVOID Pool,
  _In_  FLT_CONTEXT_TYPE ContextType
)
{ ... }

Parameters

Pool [in]

A pointer to the context to be freed.

ContextType [in]

The type of context. This parameter is required and must be one of the following values:

FLT_FILE_CONTEXT (starting with Windows Vista)

FLT_INSTANCE_CONTEXT

FLT_STREAM_CONTEXT

FLT_STREAMHANDLE_CONTEXT

FLT_SECTION_CONTEXT (starting with Windows 8)

FLT_TRANSACTION_CONTEXT (starting with Windows Vista)

FLT_VOLUME_CONTEXT

Return value

None.

Remarks

For the rare cases that a minifilter driver must free its own contexts manually, the minifilter driver can specify a routine of type PFLT_CONTEXT_FREE_CALLBACK as the minifilter driver's ContextFreeCallback routine for each context type that it registers when it calls FltRegisterFilter from its DriverEntry routine. To specify this routine, the minifilter driver stores a pointer to the routine in the ContextFreeCallback member of the FLT_CONTEXT_REGISTRATION structure for the context type.

For more information about context registration, see the reference entry for FLT_CONTEXT_REGISTRATION.

Requirements

Header

Fltkernel.h (include Fltkernel.h)

IRQL

<=APC_LEVEL

See also

FLT_CONTEXT_REGISTRATION
FLT_REGISTRATION
FltRegisterFilter
PFLT_CONTEXT_ALLOCATE_CALLBACK
PFLT_CONTEXT_CLEANUP_CALLBACK

 

 

Send comments about this topic to Microsoft

Show:
© 2014 Microsoft