EVT_NET_ADAPTER_RECEIVE_SCALING_SET_HASH_SECRET_KEY funzione di callback (netreceivescaling.h)
Il EvtNetAdapterReceiveScalingSetHashSecretKey funzione di callback viene implementata dal driver client per impostare la chiave privata hash per il controller dell'interfaccia di rete .
Sintassi
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
)
{...}
Parametri
[_In_] Adapter
L'oggetto NETADAPTER ottenuto dal driver client in una chiamata precedente a NetAdapterCreate.
[_In_] HashSecretKey
Puntatore a una struttura NET_ADAPTER_RECEIVE_SCALING_HASH_SECRET_KEY che contiene la chiave privata hash per la convalida dei calcoli hash.
Valore restituito
Restituisce STATUS_SUCCESS se la chiave privata hash è stata impostata correttamente. In caso contrario, restituisce un codice di errore NTSTATUS appropriato.
Osservazioni
Registrare l'implementazione di questa funzione di callback impostando il membro appropriato della struttura NET_ADAPTER_RECEIVE_SCALING_CAPABILITIES e quindi chiamando NetAdapterSetReceiveScalingCapabilities. I driver client chiamano in genere NetAdapterSetReceiveScalingCapabilities all'avvio di una scheda net, prima di chiamare NetAdapterStart.
Esempio
In questo callback, i driver client della scheda di interfaccia di rete programmano la chiave del segreto hash fornita all'hardware per l'uso per la verifica dei calcoli hash 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;
}
Fabbisogno
Requisito | Valore |
---|---|
piattaforma di destinazione | Universale |
versione minima di KMDF | 1.25 |
versione minima di UMDF | 2.33 |
intestazione | netreceivescaling.h (include netadaptercx.h) |
IRQL | PASSIVE_LEVEL |