Función NdisAdvanceNetBufferDataStart (ndis/nblapi.h)
Llame a la función NdisAdvanceNetBufferDataStart para liberar el espacio de datos usado que se agregó con el función NdisRetreatNetBufferDataStart.
Sintaxis
NDIS_EXPORTED_ROUTINE VOID NdisAdvanceNetBufferDataStart(
[in] NET_BUFFER *NetBuffer,
[in] ULONG DataOffsetDelta,
[in] BOOLEAN FreeMdl,
[in, optional] NET_BUFFER_FREE_MDL *FreeMdlHandler
);
Parámetros
[in] NetBuffer
Puntero a una estructura de NET_BUFFER asignada previamente.
[in] DataOffsetDelta
Cantidad de espacio de datos usado liberar. NDIS ajusta el valor del miembro DataOffset de la estructura NET_BUFFER en consecuencia.
[in] FreeMdl
Valor BOOLEAN que, si TRUE, solicita a NDIS que libere los MDL que no se usen en la operación anticipada. Si FreeMdl es FALSE, NDIS conserva los MDL sin usar para su uso en las operaciones de retirada posteriores.
[in, optional] FreeMdlHandler
Un punto de entrada opcional para una función de netFreeMdl de. Si el autor de la llamada especifica un punto de entrada para la función de netFreeMdl de, NDIS llama a netFreeMdl para liberar una MDL y memoria.
Valor devuelto
Ninguno
Observaciones
Si la memoria asignada por NDIS para satisfacer una llamada correspondiente a función NdisRetreatNetBufferDataStart, NdisAdvanceNetBufferDataStart libera la memoria que NdisRetreatNetBufferDataStart asignada. De lo contrario, la memoria permanece en MDL y solo se modifica el valor del DataOffset miembro de la estructura NET_BUFFER.
NDIS llama a la función NetFreeMdl especificada en freeMdl si NdisAdvanceNetBufferDataStart debe liberar memoria. NDIS llama a NetFreeMdl solo para liberar las MDL y la memoria que el controlador asignó en la función de NetAllocateMdl.
Cuando los controladores de protocolo llaman a NdisAdvanceNetBufferDataStart en la ruta de acceso de recepción para acceder a los distintos encabezados de transporte, la cadena MDL no debe modificarse y FreeMdl es FALSE.
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) |