NET_BUFFER_DATA Struktur (ndis/nbl.h)
Die NET_BUFFER_DATA-Struktur enthält Informationen zum Verwalten der Datenpuffer, die an eine NET_BUFFER Struktur angefügt sind, und identifiziert die nächste NET_BUFFER Struktur in einer Liste NET_BUFFER Strukturen.
typedef struct _NET_BUFFER_DATA {
NET_BUFFER *Next;
MDL *CurrentMdl;
ULONG CurrentMdlOffset;
NET_BUFFER_DATA_LENGTH NbDataLength;
MDL *MdlChain;
ULONG DataOffset;
} NET_BUFFER_DATA, *PNET_BUFFER_DATA;
Next
Ein Zeiger auf die nächste NET_BUFFER Struktur in einer verknüpften Liste mit NET_BUFFER Strukturen. Wenn diese Struktur die letzte NET_BUFFER Struktur in der Liste ist, ist dieses Element NULL-.
CurrentMdl
Ein Zeiger auf die erste MDL, die der aktuelle Treiber verwendet. Dieses Mitglied bietet eine Optimierung, die die Leistung verbessert, indem alle MDLs übersprungen werden, die der aktuelle Treiber nicht verwendet.
CurrentMdlOffset
Der Offset in Byte bis zum Anfang des verwendeten verwendeten Datenbereichs in der MDL, die durch das CurrentMdl Member angegeben wird.
NbDataLength
Die Länge des verwendeten Datenbereichs in Bytes in der MDL-Kette. Die maximale Länge beträgt 0xFFFFFFFF Bytes.
MdlChain
Ein Zeiger auf eine verknüpfte Liste von MDLs, die einen Datenpuffer zuordnen. Der Datenpuffer speichert die Netzwerkdaten.
DataOffset
Der Offset in Bytes vom Anfang der MDL-Kette bis zum Anfang der Netzwerkdaten in der MDL-Kette. Dieser Offset ist auch die Größe des nicht genutzten Datenbereichs in Byte.
Die NET_BUFFER_HEADER-Struktur enthält eine NET_BUFFER_DATA Struktur, die Daten für die NET_BUFFER Struktur definiert. Um auf die Mitglieder von NET_BUFFER_DATA zuzugreifen, verwenden Sie die NdisRetreatNetBufferDataStart- und NdisAdvanceNetBufferDataStart Funktionen und die folgenden Makros:
NET_BUFFER_CURRENT_MDL_OFFSETAnforderung | Wert |
---|---|
mindestens unterstützte Client- | Unterstützt in NDIS 6.0 und höher. |
Header- | ndis/nbl.h (include ndis.h) |