функция обратного вызова EVT_NET_ADAPTER_RECEIVE_SCALING_SET_HASH_SECRET_KEY (netreceivescaling.h)
Функция обратного вызова EvtNetAdapterReceiveScalingSetHashSecretKey реализуется драйвером клиента, чтобы задать секретный ключ хэша для контроллера сетевого интерфейса .
Синтаксис
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
Объект NETADAPTER, полученный драйвером клиента при предыдущем вызове NetAdapterCreate.
[_In_] HashSecretKey
Указатель на структуру NET_ADAPTER_RECEIVE_SCALING_HASH_SECRET_KEY , содержащую секретный ключ хэша для проверки хэш-вычислений.
Возвращаемое значение
Возвращает STATUS_SUCCESS, если секретный ключ хэша был успешно задан. В противном случае возвращает соответствующий код ошибки NTSTATUS.
Комментарии
Зарегистрируйте реализацию этой функции обратного вызова, задав соответствующий член структуры NET_ADAPTER_RECEIVE_SCALING_CAPABILITIES , а затем вызвав NetAdapterSetReceiveScalingCapabilities. Клиентские драйверы обычно вызывают NetAdapterSetReceiveScalingCapabilities при запуске сетевого адаптера перед вызовом NetAdapterStart.
Пример
В этом обратном вызове клиентские драйверы сетевого адаптера программирует предоставленный секретный ключ хэша на оборудование для использования при проверке вычислений хэша 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 |