Share via


completionFn (Compact 7)

3/12/2014

The WFP Filter Engine calls a callout's completionFn callout function whenever packet data, described by the netBufferList parameter in a packet injection function, is injected into the network stack.

Syntax

VOID NTAPI
  completionFn(
    IN VOID  *context,
    IN OUT NET_BUFFER_LIST  *netBufferList,
    IN BOOLEAN  dispatchLevel
    );

Parameters

  • context
    A pointer to the completionContext parameter of a packet injection function called by the callout driver
  • netBufferList
    A pointer to a NET_BUFFER_LIST structure that describes the packet data that is being injected by the callout driver
  • dispatchLevel
    A value that indicates the IRQL at which the completionFn callout function is being called. If this parameter is TRUE, the completionFn callout function is being called at IRQL = DISPATCH_LEVEL. If this parameter is FALSE, the completionFn callout function is being called at an IRQL < DISPATCH_LEVEL.

Return Value

None

Remarks

The FWPS_INJECT_COMPLETE0 type is defined as a pointer to the completionFn function as follows:

typedef void (NTAPI *FWPS_INJECT_COMPLETE0)  completionFn

The Status member of the NET_BUFFER_LIST structure pointed to by netBufferList indicates the result of the injection operation.

After packet data in a cloned or created NET_BUFFER_LIST structure chain is successfully injected into the network stack by a packet injection function, completionFn is called.

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

Requirements

Header

fwpsk.h

See Also

Reference

Callout Driver Callout Functions
NET_BUFFER_LIST
FwpsCalloutRegister0
FwpsFreeCloneNetBufferList0
FwpsInjectionHandleCreate0
FwpsInjectionHandleDestroy0
FwpsStreamInjectAsync0
WFP Callout Driver Functions