FWPS_INJECT_COMPLETE0回调函数 (fwpsk.h)

每当数据包数据(netBufferList参数描述)已注入到网络堆栈中时,筛选器引擎就会调用标注的 完成Fn 标注函数。

语法

FWPS_INJECT_COMPLETE0 FwpsInjectComplete0;

void FwpsInjectComplete0(
  [in]      void *context,
  [in, out] NET_BUFFER_LIST *netBufferList,
  [in]      BOOLEAN dispatchLevel
)
{...}

参数

[in] context

指向标注驱动程序 调用的 数据包注入函数之一的 completionContext 参数的指针。

[in, out] netBufferList

netBufferList 参数中传递的指针是标注驱动程序 调用的 数据包注入函数之一。

[in] dispatchLevel

一个值,该值指示调用 completionFn 标注函数的 IRQL。 如果此参数 TRUE,则会在 IRQL = DISPATCH_LEVEL 调用 completionFn 标注函数。 如果此参数 FALSE,则会在 IRQL < DISPATCH_LEVEL 调用 completionFn 标注函数。

返回值

没有

言论

FWPS_INJECT_COMPLETE0类型定义为指向 completionFn 函数的指针,如下所示:

typedef void (NTAPI *FWPS_INJECT_COMPLETE0) completionFn

NetBufferList 指向的 NET_BUFFER_LIST 结构的 状态 成员表示注入作的结果。

克隆或创建 NET_BUFFER_LIST 结构链中的数据包数据通过 数据包注入函数之一成功注入网络堆栈后,将调用 completionFn

如果调用 FwpsStreamInjectAsync0 函数来注入 NET_BUFFER_LIST 结构的链, 将为链中的每个 NET_BUFFER_LIST 调用一次,每次使用相同的 completionContext 参数在 FwpsStreamInjectAsync0中指定的参数。 在这种情况下,标注驱动程序的 完成Fn 实现应调用 FwpsFreeCloneNetBufferList0 以释放当前指示的 NET_BUFFER_LIST

筛选器引擎在 IRQL <= DISPATCH_LEVEL 调用标注的 完成Fn 标注函数。

要求

要求 价值
最低支持的客户端 从 Windows Vista 开始可用。
目标平台 窗户
标头 fwpsk.h (包括 Fwpsk.h)
IRQL <= DISPATCH_LEVEL

另请参阅

标注驱动程序标注函数

FwpsCalloutRegister0

FwpsCalloutRegister1

FwpsFreeCloneNetBufferList0

FwpsInjectionHandleCreate0

FwpsInjectionHandleDestroy0

FwpsStreamInjectAsync0

NET_BUFFER_LIST

数据包注入函数