flowDeleteFn (Compact 2013)

3/26/2014

The WFP Filter Engine calls a callout's flowDeleteFn callout function to notify the callout that a data flow being processed by the callout is being terminated.

Syntax

VOID NTAPI
  flowDeleteFn(
    IN UINT16  layerId,
    IN UINT32  calloutId,
    IN UINT64  flowContext
    );

Parameters

  • layerId
    The run-time identifier for the filtering layer at which the data stream is being stopped
  • calloutId
    The run-time identifier for the callout in the filter engine. This is the same identifier that was returned when the callout driver called the FwpsCalloutRegister0 function to register the callout with the filter engine.
  • flowContext
    The most recent context associated with the data flow.

Return Value

None

Remarks

A callout driver registers a callout's callout functions with the filter engine by calling the FwpsCalloutRegister0 function.

The filter engine calls a callout's flowDeleteFn callout function when it terminates a data flow to clean up any context associated with the data flow. For example, flowDeleteFn is called when RST performs an abrupt stop without first calling classifyFn.

The filter engine calls flowDeleteFn only if the callout driver associated a context with the data flow. When the data flow terminates, the context is automatically removed from the data flow by the filter engine.

The filter engine calls a callout's flowDeleteFn callout function only if the callout has been previously added to the filter engine at a filtering layer that supports data flows, and if the callout driver associates a context with the data flows that it processes. If a callout driver does not associate a context with the data flows that the callout processes, it should not implement a flowDeleteFn function. In this case, the callout driver should set the flowDeleteFn member of the FWPS_CALLOUT0 structure to NULL when it registers the callout with the filter engine.

The FWPS_CALLOUT_FLOW_DELETE_NOTIFY_FN0 type is defined as a pointer to the flowDeleteFn function as follows:

typedef void (NTAPI *FWPS_CALLOUT_FLOW_DELETE_NOTIFY_FN0)  flowDeleteFn

The filter engine calls a callout's flowDeleteFn callout function at IRQL <= DISPATCH_LEVEL.

Requirements

Header

fwpsk.h

See Also

Reference

Callout Driver Callout Functions
FWPS_CALLOUT0
FwpsCalloutRegister0
FwpsFlowAssociateContext0
WFP Callout Driver Run-time Filtering Layer Identifiers
classifyFn
completionFn
notifyFn
WFP Callout Driver Functions