Compartir a través de


Función FltRetainSwappedBufferMdlAddress (fltkernel.h)

FltRetainSwappedBufferMdlAddress impide que el Administrador de filtros libere la lista de descriptores de memoria (MDL) de un búfer intercambiado por un controlador de minifiltro.

Sintaxis

void FltRetainSwappedBufferMdlAddress(
  [in] PFLT_CALLBACK_DATA CallbackData
);

Parámetros

[in] CallbackData

Puntero a la estructura de datos de devolución de llamada para la operación.

Valor devuelto

None

Observaciones

Cuando un controlador de minifiltro intercambia en un nuevo búfer en una rutina de devolución de llamada de preoperación (PFLT_PRE_OPERATION_CALLBACK), el Administrador de filtros libera automáticamente la MDL del búfer cuando vuelve la rutina de devolución de llamada de postoperación (PFLT_POST_OPERATION_CALLBACK) correspondiente.

El controlador de minifiltro puede impedir que el Administrador de filtros libere el MDL llamando a FltRetainSwappedBufferMdlAddress desde la rutina de devolución de llamada de postoperación.

Después de llamar a FltRetainSwappedBufferMdlAddress, el autor de la llamada es responsable de liberar el MDL llamando a una rutina como IoFreeMdl.

FltRetainSwappedBufferMdlAddress solo se puede llamar desde una rutina de devolución de llamada de postoperación.

Requisitos

Requisito Value
Plataforma de destino Universal
Encabezado fltkernel.h (incluya Fltkernel.h)
Library FltMgr.lib
Archivo DLL Fltmgr.sys
IRQL Cualquier nivel

Consulte también

FltDecodeParameters

FltGetSwappedBufferMdlAddress

IoFreeMdl

PFLT_POST_OPERATION_CALLBACK

PFLT_PRE_OPERATION_CALLBACK