Função FltRetainSwappedBufferMdlAddress (fltkernel.h)

FltRetainSwappedBufferMdlAddress impede que o Gerenciador de Filtros libere a MDL (lista de descritores de memória) para um buffer que foi trocado por um driver de minifiltro.

Sintaxe

void FltRetainSwappedBufferMdlAddress(
  [in] PFLT_CALLBACK_DATA CallbackData
);

Parâmetros

[in] CallbackData

Ponteiro para a estrutura de dados de retorno de chamada para a operação.

Retornar valor

Nenhum

Comentários

Quando um driver de minifiltro troca em um novo buffer em uma rotina de retorno de chamada de pré-operação (PFLT_PRE_OPERATION_CALLBACK), o Gerenciador de Filtros libera automaticamente o MDL do buffer quando a rotina de retorno de chamada (PFLT_POST_OPERATION_CALLBACK) correspondente retorna.

O driver de minifiltro pode impedir que o Gerenciador de Filtros libere o MDL chamando FltRetainSwappedBufferMdlAddress da rotina de retorno de chamada de postoperation.

Depois de chamar FltRetainSwappedBufferMdlAddress, o chamador é responsável por liberar o MDL chamando uma rotina como IoFreeMdl.

FltRetainSwappedBufferMdlAddress só pode ser chamado de uma rotina de retorno de chamada de postoperation.

Requisitos

Requisito Valor
Plataforma de Destino Universal
Cabeçalho fltkernel.h (inclua Fltkernel.h)
Biblioteca FltMgr.lib
DLL Fltmgr.sys
IRQL Qualquer nível

Confira também

FltDecodeParameters

FltGetSwappedBufferMdlAddress

IoFreeMdl

PFLT_POST_OPERATION_CALLBACK

PFLT_PRE_OPERATION_CALLBACK