EVT_NET_ADAPTER_RECEIVE_SCALING_SET_HASH_SECRET_KEY função de retorno de chamada (netreceivescaling.h)
A função de retorno de chamada EvtNetAdapterReceiveScalingSetHashSecretKey é implementada pelo driver cliente para definir a chave secreta de hash para o NIC (controlador de interface de rede).
Sintaxe
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
)
{...}
Parâmetros
[_In_] Adapter
O objeto NETADAPTER que o driver cliente obteve em uma chamada anterior para NetAdapterCreate.
[_In_] HashSecretKey
Um ponteiro para uma estrutura NET_ADAPTER_RECEIVE_SCALING_HASH_SECRET_KEY que contém a chave secreta de hash para validar cálculos de hash.
Retornar valor
Retorna STATUS_SUCCESS se a chave secreta de hash foi definida com êxito. Caso contrário, retornará um código de erro NTSTATUS apropriado.
Comentários
Registre sua implementação dessa função de retorno de chamada definindo o membro apropriado da estrutura NET_ADAPTER_RECEIVE_SCALING_CAPABILITIES e chamando NetAdapterSetReceiveScalingCapabilities. Os drivers de cliente normalmente chamam NetAdapterSetReceiveScalingCapabilities ao iniciar um adaptador de rede, antes de chamar NetAdapterStart.
Exemplo
Nesse retorno de chamada, os drivers de cliente NIC programam a chave secreta de hash fornecida para seu hardware para uso na verificação de cálculos de hash do 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;
}
Requisitos
Requisito | Valor |
---|---|
Plataforma de Destino | Universal |
Versão mínima do KMDF | 1,25 |
Versão mínima do UMDF | 2.33 |
Cabeçalho | netreceivescaling.h (include netadaptercx.h) |
IRQL | PASSIVE_LEVEL |