Функция NdisAllocateNetBufferList (ndis/nblapi.h)
Вызовите функцию NdisAllocateNetBufferList , чтобы выделить и инициализировать структуру NET_BUFFER_LIST из пула NET_BUFFER_LIST структур.
Синтаксис
NDIS_EXPORTED_ROUTINE NET_BUFFER_LIST * NdisAllocateNetBufferList(
[in] NDIS_HANDLE PoolHandle,
[in] USHORT ContextSize,
[in] USHORT ContextBackFill
);
Параметры
[in] PoolHandle
Дескриптор пула структуры NET_BUFFER_LIST, который ранее был возвращен при вызове NdisAllocateNetBufferListPool.
[in] ContextSize
Объем используемого пространства данных в структуре NET_BUFFER_LIST_CONTEXT для резервирования для вызывающего объекта. ContextSize должен быть кратным значению, определенному MEMORY_ALLOCATION_ALIGNMENT.
[in] ContextBackFill
Объем неиспользуемого пространства данных (пространства обратного заполнения), необходимого вызывающей стороне. NDIS добавляет это значение в ContextSize и выделяет дополнительное пространство. Параметр ContextBackFill должен быть кратным значению, определенному MEMORY_ALLOCATION_ALIGNMENT.
Возвращаемое значение
NdisAllocateNetBufferList возвращает указатель на выделенную NET_BUFFER_LIST структуру. Если выделение не удалось, этот указатель имеет значение NULL.
Комментарии
Можно вызвать NdisAllocateNetBufferList илиФункция NdisAllocateNetBufferAndNetBufferList для выделения структуры NET_BUFFER_LIST из пула.
Вызовите функцию NdisFreeNetBufferList , чтобы освободить структуру NET_BUFFER_LIST.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Поддерживается в NDIS 6.0 и более поздних версиях. |
Целевая платформа | Универсальное |
Верхняя часть | ndis/nblapi.h (включая ndis.h) |
Библиотека | Ndis.lib |
IRQL | <= DISPATCH_LEVEL |
Правила соответствия DDI | Irql_NetBuffer_Function(ndis), NdisAllocateNetBufferList2(ndis), NdisAllocateNetBufferList2_InitFail(ndis) |
См. также раздел
NET_BUFFER_LIST_POOL_PARAMETERS
NdisAllocateNetBufferAndNetBufferList NdisAllocateNetBufferListPool