Condividi tramite


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

Vedere anche

NET_ADAPTER_RECEIVE_SCALING_HASH_SECRET_KEY

NetAdapterCx Receive Side Scaling