EVT_NET_ADAPTER_RECEIVE_SCALING_SET_HASH_SECRET_KEY funzione di callback (netreceivescaling.h)
La funzione di callback EvtNetAdapterReceiveScalingSetHashSecretKey viene implementata dal driver client per impostare la chiave privata hash per il controller di 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 il driver client ottenuto in una chiamata precedente a NetAdapterCreate.
[_In_] HashSecretKey
Puntatore a una struttura NET_ADAPTER_RECEIVE_SCALING_HASH_SECRET_KEY contenente 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.
Commenti
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 quando si avvia 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 da usare per verificare i 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;
}
Requisiti
Requisito | Valore |
---|---|
Piattaforma di destinazione | Universale |
Versione KMDF minima | 1,25 |
Versione UMDF minima | 2.33 |
Intestazione | netreceivescaling.h (include netadaptercx.h) |
IRQL | PASSIVE_LEVEL |