FwpmCalloutAdd0 函数 (fwpmk.h)

FwpmCalloutAdd0 函数将标注添加到筛选器引擎。

注意FwpmCalloutAdd0FwpmCalloutAdd 的特定版本。 有关详细信息 ,请参阅 WFP Version-Independent 名称和面向特定版本的 Windows
 

语法

NTSTATUS FwpmCalloutAdd0(
  [in]            HANDLE               engineHandle,
  [in]            const FWPM_CALLOUT0  *callout,
  [in, optional]  PSECURITY_DESCRIPTOR sd,
  [out, optional] UINT32               *id
);

参数

[in] engineHandle

筛选器引擎的打开会话的句柄。 标注驱动程序调用 FwpmEngineOpen0 函数以打开与筛选器引擎的会话。

[in] callout

指向常 量FWPM_CALLOUT0 结构的指针,该结构包含向筛选器引擎添加标注所需的数据。

[in, optional] sd

指向常 量SECURITY_DESCRIPTOR 结构的指针,该结构描述要添加到筛选器引擎的标注的安全描述符。 此参数是可选的,可以为 NULL

[out, optional] id

指向 UINT32 类型变量的指针,该变量接收标识筛选器引擎中标注的运行时标识符。 此标识符与标注驱动程序向筛选器引擎注册标注驱动程序的标注函数时返回的标识符相同。 从筛选器引擎中删除标注时,标注驱动程序将此标识符传递给 FwpmCalloutDeleteById0 函数。 此参数是可选的,可以为 NULL

返回值

FwpmCalloutAdd0 函数返回以下 NTSTATUS 代码之一:

返回代码 说明
STATUS_SUCCESS
标注已成功添加到筛选器引擎。
STATUS_FWP_ALREADY_EXISTS
无法将标注添加到筛选器引擎。 筛选器引擎中已存在一个标注,其标识符与标注参数指向FWPM_CALLOUT0 结构的 calloutKey 成员中指定的 GUID 相同。
其他状态代码
出现了错误。

注解

标注驱动程序调用 FwpmCalloutAdd0 函数以将标注添加到筛选器引擎。

标注驱动程序通常不会将其标注添加到筛选器引擎。 在大多数情况下,这由用户模式 Windows 筛选平台管理应用程序处理。

在标注驱动程序将标注注册到筛选器引擎之前,可以将为筛选器操作指定标注的标注和筛选器添加到筛选器引擎。 在这种情况下,操作类型 为 FWP_ACTION_CALLOUT_TERMINATINGFWP_ACTION_CALLOUT_UNKNOWN 的筛选器被视为 FWP_ACTION_BLOCK 操作类型 为 FWP_ACTION_CALLOUT_INSPECTION 的筛选器将被忽略,直到向筛选器引擎注册标注为止。

要求

要求
最低受支持的客户端 从 Windows Vista 开始可用。
目标平台 通用
标头 fwpmk.h (包括 Fwpmk.h)
Library Fwpkclnt.lib
IRQL PASSIVE_LEVEL

另请参阅

FWPM_CALLOUT0

FwpmCalloutDeleteById0

FwpmCalloutDeleteByKey0

FwpmEngineOpen0

标注类型