TCP_OFFLOAD_RECEIVE_INDICATE_HANDLER funzione di callback (ndischimney.h)
[La funzionalità offload del camino TCP è deprecata e non deve essere usata.]
NDIS chiama driver di protocollo o driver intermedi ProtocolTcpOffloadReceiveIndicate funzione per recapitare i dati ricevuti indicati da un driver sottostante o da una destinazione di offload.
Sintassi
TCP_OFFLOAD_RECEIVE_INDICATE_HANDLER TcpOffloadReceiveIndicateHandler;
NDIS_STATUS TcpOffloadReceiveIndicateHandler(
[in] IN PVOID OffloadContext,
[in] IN PNET_BUFFER_LIST NetBufferList,
[in] IN NDIS_STATUS Status,
[out] OUT PULONG BytesConsumed
)
{...}
Parametri
[in] OffloadContext
Puntatore alla struttura di NDIS_OFFLOAD_HANDLE del protocollo o del driver intermedio per la connessione TCP in cui viene effettuata l'indicazione. Il protocollo o il driver intermedio ha fornito questo puntatore come parametro di input alla funzione NdisInitiateOffload durante l'offload della connessione.
[in] NetBufferList
Puntatore a una struttura NET_BUFFER_LIST. Ogni struttura NET_BUFFER_LIST descrive un elenco di strutture NET_BUFFER. Ogni struttura NET_BUFFER nell'elenco viene mappata a una catena di elenchi di descrittori di memoria (MDLs). Gli mdls contengono i dati ricevuti. Gli mdls sono bloccati in modo che rimangano residenti, ma non vengono mappati alla memoria di sistema.
La struttura NET_BUFFER_LIST specificata da NetBufferList deve essere una struttura autonoma e non può essere la prima struttura in un elenco collegato di strutture NET_BUFFER_LIST. Le destinazioni di offload possono aggirare questa limitazione concatenando il numero di MDL necessario allo stesso NET_BUFFER in un'indicazione di ricezione offload.
[in] Status
Un driver intermedio deve propagare questo stato durante la chiamata NdisTcpOffloadReceiveHandler.
[out] BytesConsumed
Puntatore a una variabile tipizzata ULONG che riceve il numero di byte utilizzati dall'applicazione client.
Valore restituito
Le funzione ProtocolTcpOffloadReceiveIndicate può restituire uno dei valori seguenti:
Codice restituito | Descrizione |
---|---|
|
L'applicazione client ha utilizzato tutti i dati di ricezione indicati. |
|
L'applicazione client ha rifiutato tutti i dati di ricezione indicati. |
|
L'applicazione client ha utilizzato un subset dei dati di ricezione indicati. La quantità di dati, in byte, utilizzata dall'applicazione client viene restituita nella variabile specificata dal parametro BytesConsumed. |
Osservazioni
Per propagare l'indicazione allo stack di driver o host overlying, il driver intermedio chiama funzione NdisTcpOffloadReceiveHandler. Il driver intermedio passa i parametri seguenti alla funzione NdisTcpOffloadReceiveHandler:
- Il NdisOffloadHandle che la destinazione di offload archiviata nel contesto per la connessione TCP offloaded. Per altre informazioni, vedere riferimento allo stato offloaded tramite un driver intermedio.
- Il puntatore NetBufferList passato NDIS alla funzione ProtocolTcpOffloadReceiveIndicate del driver intermedio.
- Il Status passato NDIS alla funzione ProtocolTcpOffloadReceiveIndicate del driver intermedio.
Fabbisogno
Requisito | Valore |
---|---|
piattaforma di destinazione | Finestre |
intestazione | ndischimney.h (include Ndischimney.h) |