EVT_NET_ADAPTER_RECEIVE_SCALING_SET_HASH_SECRET_KEY回调函数 (netreceivescaling.h)
EvtNetAdapterReceiveScalingSetHashSecretKey 回调函数由客户端驱动程序实现,用于设置网络接口控制器的哈希密钥 (NIC) 。
语法
EVT_NET_ADAPTER_RECEIVE_SCALING_SET_HASH_SECRET_KEY EvtNetAdapterReceiveScalingSetHashSecretKey;
NTSTATUS EvtNetAdapterReceiveScalingSetHashSecretKey(
[_In_] NETADAPTER Adapter,
[_In_] const NET_ADAPTER_RECEIVE_SCALING_HASH_SECRET_KEY *HashSecretKey
)
{...}
参数
[_In_] Adapter
在上一次调用 NetAdapterCreate 时获取的客户端驱动程序 的 NETADAPTER 对象。
[_In_] HashSecretKey
指向 NET_ADAPTER_RECEIVE_SCALING_HASH_SECRET_KEY 结构的指针,该结构包含用于验证哈希计算的哈希密钥。
返回值
如果成功设置哈希密钥,则返回STATUS_SUCCESS。 否则, 将返回相应的 NTSTATUS 错误代码。
注解
通过设置 NET_ADAPTER_RECEIVE_SCALING_CAPABILITIES 结构的相应成员,然后调用 NetAdapterSetReceiveScalingCapabilities 来注册此回调函数的实现。 客户端驱动程序通常在启动网络适配器时调用 NetAdapterSetReceiveScalingCapabilities ,然后再调用 NetAdapterStart。
示例
在此回调中,NIC 客户端驱动程序对其硬件提供的哈希密钥进行编程,以用于验证 RSS 哈希计算。
NTSTATUS
MyEvtNetAdapterReceiveScalingSetHashSecretKey(
_In_ NETADAPTER Adapter,
_In_ const NET_ADAPTER_RECEIVE_SCALING_HASH_SECRET_KEY * HashSecretKey
)
{
const UINT32* key = (const UINT32*)HashSecretKey->Key;
if(!MyHardwareRssSetHashSecretKey)
{
WdfDeviceSetFailed(Adapter->WdfDevice, WdfDeviceFailedAttemptRestart);
return STATUS_UNSUCCESSFUL;
}
return STATUS_SUCCESS;
}
要求
要求 | 值 |
---|---|
目标平台 | 通用 |
最低 KMDF 版本 | 1.25 |
最低 UMDF 版本 | 2.33 |
标头 | netreceivescaling.h (包括 netadaptercx.h) |
IRQL | PASSIVE_LEVEL |