FWPS_CALLOUT0 结构 (fwpsk.h)

FWPS_CALLOUT0 结构定义标注驱动程序向筛选器引擎注册标注所需的数据。

注意FWPS_CALLOUT0 是 Windows Vista 及更高版本中使用的 FWPS_CALLOUT 的特定版本。 有关详细信息 ,请参阅 WFP Version-Independent 名称和面向特定版本的 Windows 。 对于Windows 8,FWPS_CALLOUT2可用。 对于 Windows 7,FWPS_CALLOUT1 可用。
 

语法

typedef struct FWPS_CALLOUT0_ {
  GUID                                calloutKey;
  UINT32                              flags;
  FWPS_CALLOUT_CLASSIFY_FN0           classifyFn;
  FWPS_CALLOUT_NOTIFY_FN0             notifyFn;
  FWPS_CALLOUT_FLOW_DELETE_NOTIFY_FN0 flowDeleteFn;
} FWPS_CALLOUT0;

成员

calloutKey

标注驱动程序定义的 GUID ,用于唯一标识标注。

flags

指定标注特定参数的标志。 可能的标志包括:

FWP_CALLOUT_FLAG_CONDITIONAL_ON_FLOW

标注驱动程序可以在注册将在支持数据流的层中添加的标注时指定此标志。 如果指定了此标志,则仅当存在与数据流关联的上下文时,筛选器引擎才会调用标注驱动程序的 classifyFn0 标注函数。 标注驱动程序通过调用 FwpsFlowAssociateContext0 函数将上下文与数据流相关联。

FWP_CALLOUT_FLAG_ALLOW_OFFLOAD

标注驱动程序指定此标志以指示标注驱动程序的 classifyFn0 标注函数不受将网络数据处理卸载到支持负载的网络接口卡 (NIC) 影响。 如果未指定此标志,则为指定筛选器操作标注的任何筛选器处理的所有流量禁用网络数据处理卸载。

classifyFn

指向标注驱动程序的 classifyFn0 标注函数的指针。 每当有要由标注处理的网络数据时,筛选器引擎都会调用此函数。

notifyFn

指向标注驱动程序的 notifyFn0 函数的指针。 筛选器引擎调用此函数以通知标注驱动程序与标注关联的事件。

flowDeleteFn

指向标注驱动程序的 flowDeleteFn 标注函数的指针。 每当终止由标注处理的数据流时,筛选器引擎就会调用此函数。

如果标注驱动程序未将上下文与标注处理的数据流相关联,则此成员应设置为 NULL

注解

标注驱动程序在向筛选器引擎注册标注时,将指向初始化 的 FWPS_CALLOUT0 结构的指针传递给 FwpsCalloutRegister0 函数。

标注只能为驱动程序有兴趣执行流检查的连接设置 FWP_CALLOUT_FLAG_CONDITIONAL_ON_FLOW 标志。 在所有其他连接上将忽略此标注。 性能将得到提高,驱动程序将不必维护不必要的状态数据。

要求

要求
最低受支持的客户端 从 Windows Vista 开始可用。
标头 fwpsk.h (包括 Fwpsk.h)

另请参阅

FWPS_CALLOUT1

FWPS_CALLOUT2

FwpsCalloutRegister0

classifyFn0

flowDeleteFn

notifyFn0