Функция 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 (include ndis.h) |
библиотеки | Ndis.lib |
IRQL | <= DISPATCH_LEVEL |
правил соответствия DDI | Irql_NetBuffer_Function(ndis), NdisAllocateNetBufferList2(ndis), NdisAllocateNetBufferList2_InitFail(ndis) |
См. также
NET_BUFFER_LIST_POOL_PARAMETERS
NdisAllocateNetBufferAndNetBufferList NdisAllocateNetBufferListPool