OID_NIC_SWITCH_CURRENT_CAPABILITIES

上层驱动程序发出对象标识符 (OID) 查询请求OID_NIC_SWITCH_CURRENT_CAPABILITIES,以获取网络适配器中当前启用的 NIC 交换机的硬件功能。

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

注解

从 NDIS 6.20 开始,微型端口驱动程序在调用其 MiniportInitializeEx 函数时,在网络适配器上提供当前启用的 NIC 交换机硬件功能。 驱动程序使用 NIC 开关硬件功能初始化NDIS_NIC_SWITCH_CAPABILITIES结构,并将 NDIS_MINIPORT_ADAPTER_HARDWARE_ASSIST_ATTRIBUTES 结构的 CurrentNicSwitchCapabilities 成员设置为指向NDIS_NIC_SWITCH_CAPABILITIES结构的指针。 然后,微型端口驱动程序调用 NdisMSetMiniportAttributes 函数并将 MiniportAttributes 参数设置为指向 NDIS_MINIPORT_ADAPTER_HARDWARE_ASSIST_ATTRIBUTES 结构的指针。

注意 从 NDIS 6.30 开始,支持单根 I/O 虚拟化 (SR-IOV) 接口的微型端口驱动程序必须注册 NIC 交换机启用的硬件功能。 驱动程序通过调用 NdisMSetMiniportAttributes 来注册这些功能。

覆盖协议和筛选器驱动程序不必发出OID_NIC_SWITCH_CURRENT_CAPABILITIES的 OID 查询请求。 NDIS 通过以下方式向这些驱动程序提供网络适配器当前启用的 NIC 交换机硬件功能:

  • 在绑定操作期间,NDIS 将基础网络适配器当前启用的 NIC 交换机硬件功能报告给NDIS_BIND_PARAMETERS结构的 NicSwitchCapabilities 成员中的过度协议驱动程序。

  • 在附加操作期间,NDIS 将基础网络适配器当前启用的 NIC 交换机硬件功能报告为NDIS_FILTER_ATTACH_PARAMETERS结构的 NicSwitchCapabilities 成员中的过度筛选驱动程序。

返回状态代码

NDIS 处理微型端口驱动程序OID_NIC_SWITCH_CURRENT_CAPABILITIES请求的 OID 查询请求。 不会向驱动程序发出此 OID 请求。

当 NDIS 处理OID_NIC_SWITCH_CURRENT_CAPABILITIES请求时,它将返回以下状态代码之一:

状态代码 说明

NDIS_STATUS_SUCCESS

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

NDIS_STATUS_NOT_SUPPORTED

微型端口驱动程序不支持单根 I/O 虚拟化 (SR-IOV) 接口,或者未启用该接口。

NDIS_STATUS_INVALID_LENGTH

信息缓冲区的长度小于大小 (NDIS_NIC_SWITCH_CAPABILITIES) 。 微型端口驱动程序必须设置 DATA。QUERY_INFORMATION。NDIS_OID_REQUEST结构中的 BytesNeeded 成员达到所需的最小缓冲区大小。

NDIS_STATUS_FAILURE

由于其他原因,请求失败。

要求

版本

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

标头

Ntddndis.h (包括 Ndis.h)

另请参阅

NDIS_BIND_PARAMETERS

NDIS_FILTER_ATTACH_PARAMETERS

NDIS_MINIPORT_ADAPTER_HARDWARE_ASSIST_ATTRIBUTES

NDIS_NIC_SWITCH_CAPABILITIES

NDIS_OID_REQUEST