Compartir a través de


Función NdisAllocateNetBufferList (ndis/nblapi.h)

Llame a la función NdisAllocateNetBufferList para asignar e inicializar una estructura de NET_BUFFER_LIST desde un grupo de NET_BUFFER_LIST estructura.

Sintaxis

NDIS_EXPORTED_ROUTINE NET_BUFFER_LIST * NdisAllocateNetBufferList(
  [in] NDIS_HANDLE PoolHandle,
  [in] USHORT      ContextSize,
  [in] USHORT      ContextBackFill
);

Parámetros

[in] PoolHandle

Identificador de grupo de NET_BUFFER_LIST estructura que se devolvió anteriormente desde una llamada a NdisAllocateNetBufferListPool.

[in] ContextSize

Cantidad de espacio de datos usado en la estructura NET_BUFFER_LIST_CONTEXT que se va a reservar para el autor de la llamada. El ContextSize de debe ser un múltiplo del valor definido por MEMORY_ALLOCATION_ALIGNMENT.

[in] ContextBackFill

Cantidad de espacio de datos sin usar (espacio de reposición) que requiere el autor de la llamada. NDIS agrega este valor al ContextSize y asigna espacio adicional. El ContextBackFill de debe ser un múltiplo del valor definido por MEMORY_ALLOCATION_ALIGNMENT.

Valor devuelto

NdisAllocateNetBufferList devuelve un puntero a la estructura de NET_BUFFER_LIST asignada. Si la asignación no se realizó correctamente, este puntero es NULL.

Observaciones

Puede llamar al NdisAllocateNetBufferList o función NdisAllocateNetBufferAndNetBufferList para asignar una estructura de NET_BUFFER_LIST desde un grupo.

Las estructurasNET_BUFFER y NET_BUFFER_LIST deben asignarse desde un grupo de búferes NDIS. Un controlador no debe asignar ni inicializar una estructura de NET_BUFFER_LIST ni NET_BUFFER desde su grupo de memoria privada o la pila.
 
Si llama a NdisAllocateNetBufferList y el grupo de estructuras de NET_BUFFER_LIST se asignó llamando al función NdisAllocateNetBufferListPool con el fAllocateNetBuffer miembro de la estructura de NET_BUFFER_LIST_POOL_PARAMETERS establecida en TRUE, NDIS asigna un NET_BUFFER_LIST, NET_BUFFER, MDL y datos.

Llame a la función NdisFreeNetBufferList para liberar una estructura de NET_BUFFER_LIST.

Requisitos

Requisito Valor
cliente mínimo admitido Se admite en NDIS 6.0 y versiones posteriores.
de la plataforma de destino de Universal
encabezado de ndis/nblapi.h (incluya ndis.h)
biblioteca de Ndis.lib
irQL <= DISPATCH_LEVEL
reglas de cumplimiento de DDI Irql_NetBuffer_Function(ndis), NdisAllocateNetBufferList2(ndis), NdisAllocateNetBufferList2_InitFail(ndis)

Consulte también

NET_BUFFER

NET_BUFFER_LIST

NET_BUFFER_LIST_CONTEXT

NET_BUFFER_LIST_POOL_PARAMETERS

NdisAllocateNetBufferAndNetBufferList NdisAllocateNetBufferListPool

NdisFreeNetBufferList