Función NdisAllocateNetBufferListContext (ndis/nblapi.h)
Llame a la función NdisAllocateNetBufferListContext para asignar más espacio de contexto en la estructura NET_BUFFER_LIST_CONTEXT de un objeto
NET_BUFFER_LIST estructura.
Sintaxis
NDIS_EXPORTED_ROUTINE NDIS_STATUS NdisAllocateNetBufferListContext(
[in] NET_BUFFER_LIST *NetBufferList,
[in] USHORT ContextSize,
[in] USHORT ContextBackFill,
[in] ULONG PoolTag
);
Parámetros
[in] NetBufferList
Puntero a una estructura de NET_BUFFER_LIST asignada previamente.
[in] ContextSize
Cantidad de espacio de contexto que se va a asignar en la estructura NET_BUFFER_LIST_CONTEXT. Esta cantidad debe ser un múltiplo del valor definido por sizeof(void*)
.
[in] ContextBackFill
Cantidad de memoria, además del valor de ContextSize, para asignar si NDIS debe asignar memoria para satisfacer la solicitud. Esta cantidad debe ser un múltiplo del valor definido por sizeof(void*)
.
[in] PoolTag
Etiqueta de grupo de kernel que NDIS usa para asignar la memoria para la estructura de NET_BUFFER_LIST_CONTEXT, si se requiere la asignación. La etiqueta es una cadena, delimitada por comillas simples, con hasta cuatro caracteres, normalmente especificada en orden invertido. La etiqueta del grupo de kernel ayuda a NDIS a identificar al propietario de la memoria.
Valor devuelto
NdisAllocateNetBufferListContext devuelve una de las siguientes opciones:
Código devuelto | Descripción |
---|---|
|
NdisAllocateNetBufferListContext asignó correctamente el espacio de contexto reduciendo el valor del miembro Offset de la estructura NET_BUFFER_LIST_CONTEXT o asignando nueva memoria. |
|
Error de NdisAllocateNetBufferListContext debido a recursos insuficientes. |
|
Error de NdisAllocateNetBufferListContext por motivos distintos de recursos insuficientes. |
Comentarios
Si hay suficiente espacio de contexto sin usar disponible en la estructura NET_BUFFER_LIST_CONTEXT para satisfacer la solicitud, NdisAllocateNetBufferListContext simplemente reduce el valor del miembro Offset en la estructura NET_BUFFER_LIST_CONTEXT. De lo contrario, NDIS asigna nueva memoria para el espacio de contexto. Puede especificar ContextBackFill para asignar memoria adicional para que la siguiente llamada a NdisAllocateNetBufferListContext no tenga que asignar memoria.
Llamada a Función NdisFreeNetBufferListContext para liberar el espacio de contexto en la estructura de NET_BUFFER_LIST_CONTEXT que se asignó con NdisAllocateNetBufferListContext.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Compatible con NDIS 6.0 y versiones posteriores. |
Plataforma de destino | Universal |
Encabezado | ndis/nblapi.h (include ndis.h) |
Library | Ndis.lib |
IRQL | <= DISPATCH_LEVEL |
Reglas de cumplimiento de DDI | Irql_NetBuffer_Function(ndis) |