Condividi tramite


Struttura NET_BUFFER_LIST

Una struttura NET_BUFFER_LIST crea un pacchetto di un elenco collegato di strutture NET_BUFFER.

Nella figura seguente vengono illustrati i campi in una struttura NET_BUFFER_LIST.

Diagramma che illustra i campi in una struttura NET_BUFFER_LIST.

La struttura NET_BUFFER_LIST include una struttura NET_BUFFER_LIST_HEADER nel membro NetBufferListHeader . La struttura NET_BUFFER_LIST_HEADER include una struttura NET_BUFFER_LIST_DATA nel membro NetBufferListData . È consigliabile utilizzare macro NDIS per accedere ai membri della struttura NET_BUFFER_LIST. Per altre informazioni su queste macro, vedere la pagina di riferimento della struttura NET_BUFFER_LIST .

Alcuni membri vengono usati solo da NDIS. I membri che i driver probabilmente usano sono definiti nell'elenco seguente:

ParentNetBufferList
Se una struttura NET_BUFFER_LIST è un elemento figlio derivato da un elemento padre(clonato, frammentato o riassemblato), ParentNetBufferList specifica un puntatore alla struttura NET_BUFFER_LIST padre. In caso contrario, questo parametro è NULL.

NdisPoolHandle
Specifica un handle del pool che identifica il pool di NET_BUFFER_LIST da cui è stata allocata la struttura NET_BUFFER_LIST.

ProtocolReserved
Riservato per l'uso da parte dei driver di protocollo.

MiniportReserved
Riservato per l'uso da parte dei driver miniport.

SourceHandle
Handle fornito dal NDIS al driver in un'operazione di associazione o di collegamento utilizzando una delle routine fornite dal driver seguenti:

Miniport Driver
MiniportInitializeEx

Driver di protocollo
ProtocolBindAdapterEx

Driver filtro
FilterAttach

NDIS usa SourceHandle per restituire la struttura NET_BUFFER_LIST al driver che ha inviato la struttura NET_BUFFER_LIST. I driver NDIS non devono leggere questo handle.

ChildRefCount
Se una struttura NET_BUFFER_LIST è un elemento padre (include elementi figlio derivati da operazioni clone, fragment o reassemble), ChildRefCount specifica il numero di elementi figlio esistenti. In caso contrario, questo parametro è zero.

Bandiere
Riservato per specifiche future degli attributi per la struttura NET_BUFFER_LIST. Attualmente non sono disponibili flag per i driver.

Stato
Specifica lo stato di completamento finale di un'operazione di dati di rete per questa struttura NET_BUFFER_LIST. I driver Miniport scrivono questo valore prima di completare un'operazione di invio.

NetBufferListInfo
Specifica NET_BUFFER_LIST informazioni sulla struttura comuni a tutte le strutture NET_BUFFER nell'elenco. Queste informazioni vengono spesso definite dati fuori banda (OOB).

Prossimo
Specifica un puntatore alla struttura NET_BUFFER_LIST successiva in un elenco collegato di strutture NET_BUFFER_LIST. Se una struttura NET_BUFFER_LIST è l'ultima struttura nell'elenco, questo membro è NULL.

FirstNetBuffer
Specifica un puntatore alla prima struttura NET_BUFFER in un elenco collegato di strutture NET_BUFFER associate a questa struttura NET_BUFFER_LIST.

NotaContext è un puntatore a una struttura NET_BUFFER_LIST_CONTEXT . NDIS fornisce macro e funzioni per modificare i dati in Context . Per altre informazioni sulla struttura NET_BUFFER_LIST_CONTEXT, vedere struttura NET_BUFFER_LIST_CONTEXT.