OID_RECEIVE_FILTER_HARDWARE_CAPABILITIES

过度覆盖驱动程序发出OID_RECEIVE_FILTER_HARDWARE_CAPABILITIES的 OID 查询请求,以获取网络适配器的接收筛选硬件功能。

从 OID 查询请求成功返回后,NDIS_OID_REQUEST 结构的 InformationBuffer 成员包含指向NDIS_RECEIVE_FILTER_CAPABILITIES结构的指针。

注解

NDIS 接收筛选器用于以下 NDIS 接口:

NDIS_RECEIVE_FILTER_CAPABILITIES结构包含有关网络适配器的接收筛选硬件功能的信息。 这些功能可以包括当前由 INF 文件设置或通过 “高级 属性”页禁用的硬件功能。

注意 网络适配器的所有接收筛选硬件功能都通过OID_RECEIVE_FILTER_HARDWARE_CAPABILITIES的 OID 查询请求返回,无论该功能是启用或禁用的。

从 NDIS 6.20 开始,微型端口驱动程序在调用其 MiniportInitializeEx 函数时注册当前启用的网络适配器的接收筛选硬件功能。 微型端口驱动程序按照以下步骤注册这些功能:

  1. 驱动程序使用接收筛选硬件功能初始化 NDIS_RECEIVE_FILTER_CAPABILITIES 结构。

  2. 驱动程序初始化 NDIS_MINIPORT_ADAPTER_HARDWARE_ASSIST_ATTRIBUTES 结构,并将 CurrentReceiveFilterCapabilities 成员设置为指向 NDIS_RECEIVE_FILTER_CAPABILITIES 结构的指针。

  3. 微型端口驱动程序调用 NdisMSetMiniportAttributes 函数,并将 MiniportAttributes 参数设置为指向 NDIS_MINIPORT_ADAPTER_HARDWARE_ASSIST_ATTRIBUTES 结构的指针。

返回状态代码

NDIS 处理微型端口驱动程序OID_RECEIVE_FILTER_HARDWARE_CAPABILITIES的 OID 查询请求,并返回以下状态代码之一:

NDIS_STATUS_SUCCESS
请求已成功完成。 InformationBuffer 指向NDIS_RECEIVE_FILTER_CAPABILITIES结构。

NDIS_STATUS_PENDING
请求正在等待完成。 请求完成后,NDIS 会将最终状态代码和结果传递给调用方 OID 请求完成处理程序。

NDIS_STATUS_INVALID_LENGTH
信息缓冲区太短。 NDIS 设置数据。QUERY_INFORMATION。NDIS_OID_REQUEST结构中的 BytesNeeded 成员达到所需的最小缓冲区大小。

NDIS_STATUS_NOT_SUPPORTED
网络适配器不支持接收筛选。

NDIS_STATUS_FAILURE
请求因其他原因而失败。

要求

版本

在 NDIS 6.20 及更高版本中受支持。

标头

Ntddndis.h (包括 Ndis.h)

另请参阅

NDIS_BIND_PARAMETERS

NDIS_MINIPORT_ADAPTER_HARDWARE_ASSIST_ATTRIBUTES

NDIS_OID_REQUEST

NDIS_RECEIVE_FILTER_CAPABILITIES