структура NET_BUFFER_DATA (ndis/nbl.h)
Структура NET_BUFFER_DATA содержит сведения об управлении буферами данных, подключенными к структуре NET_BUFFER, и определяет следующую NET_BUFFER структуру в списке NET_BUFFER структур.
Синтаксис
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
Указатель на следующую NET_BUFFER структуру в связанном списке NET_BUFFER структур. Если эта структура является последней NET_BUFFER структурой в списке, этот элемент NULL.
CurrentMdl
Указатель на первый MDL,который использует текущий драйвер. Этот элемент обеспечивает оптимизацию, которая повышает производительность, пропуская все многомерные библиотеки, которые текущий драйвер не использует.
CurrentMdlOffset
Смещение в байтах к началу используемого пространства данных в MDL, указанном элементом currentMdl.
NbDataLength
Длина в байтах используемого пространства данных в цепочке MDL. Максимальная длина составляет 0xFFFFFFFF байтов.
MdlChain
Указатель на связанный список многомерных выражений, сопоставляющих буфер данных. Буфер данных сохраняет сетевые данные.
DataOffset
Смещение в байтах с начала цепочки MDL до начала сетевых данных в цепочке MDL. Это смещение также является размером в байтах неиспользуемого пространства данных.
Замечания
Структура NET_BUFFER_HEADER содержит NET_BUFFER_DATA структуру, которая определяет данные для структуры NET_BUFFER. Чтобы получить доступ к членам NET_BUFFER_DATA, используйте NdisRetreatNetBufferDataStart и функции NdisAdvanceNetBufferDataStart и следующие макросы:
NET_BUFFER_CURRENT_MDL_OFFSETТребования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Поддерживается в NDIS 6.0 и более поздних версиях. |
заголовка | ndis/nbl.h (include ndis.h) |