FLT_PARAMETERS para união IRP_MJ_QUERY_EA

Componente union usado quando o campo MajorFunction da estrutura de FLT_IO_PARAMETER_BLOCK para a operação é IRP_MJ_QUERY_EA.

Sintaxe

typedef union _FLT_PARAMETERS {
  ...    ;
  struct {
    ULONG                    Length;
    PVOID                    EaList;
    ULONG                    EaListLength;
    ULONG  POINTER_ALIGNMENT EaIndex;
    PVOID                    EaBuffer;
    PMDL                     MdlAddress;
  } QueryEa;
  ...    ;
} FLT_PARAMETERS, *PFLT_PARAMETERS;

Membros

  • QueryEa: estrutura dentro FLT_PARAMETERS união que contém os seguintes membros.

  • Comprimento: comprimento, em bytes, do buffer para o qual O EaBuffer aponta.

  • EaList: ponteiro para um buffer de entrada FILE_GET_EA_INFORMATION estruturado pelo chamador especificando os atributos estendidos a serem consultados.

  • EaListLength: comprimento, em bytes, do buffer para o qual o EaList aponta.

  • EaIndex: índice da entrada na qual começar a digitalizar a lista de atributos estendidos. Esse parâmetro será ignorado se o sinalizador de SL_INDEX_SPECIFIED não estiver definido na estrutura FLT_IO_PARAMETER_BLOCK da operação ou se EaList apontar para uma lista não íntegra.

  • EaBuffer: ponteiro para um buffer de saída FILE_FULL_EA_INFORMATION estruturado pelo chamador em que os valores de atributo estendido devem ser retornados. Esse membro é opcional e pode ser NULL se um MDL for fornecido em MdlAddress. Veja os Comentários.

  • MdlAddress: endereço de uma MDL (lista de descritores de memória) que descreve o buffer para o qual o EaBuffer aponta. Esse membro é opcional e pode ser NULL se um buffer for fornecido no EaBuffer. Veja os Comentários.

Comentários

A estrutura FLT_PARAMETERS para operações de IRP_MJ_QUERY_EA contém os parâmetros para uma operação de informações de atributos estendidos de consulta baseada em IRP representada por uma estrutura de dados de retorno de chamada (FLT_CALLBACK_DATA). Ele está contido em uma estrutura FLT_IO_PARAMETER_BLOCK.

Se um buffer EaBuffer e MdlAddress for fornecido, é recomendável que os minifiltros usem o MDL. A memória para a qual o EaBuffer aponta é válida quando é um endereço de modo de usuário que está sendo acessado no contexto do processo de chamada ou se é um endereço no modo kernel.

Se um minifiltro alterar o valor de MdlAddress, após o retorno de chamada pós-operação, o Gerenciador de Filtros liberará o MDL armazenado atualmente em MdlAddress e restaurará o valor anterior de MdlAddress.

IRP_MJ_QUERY_EA é uma operação baseada em IRP.

Requisitos

Tipo de Requisito Requisito
parâmetro Fltkernel.h (inclua Fltkernel.h)

Confira também

FILE_FULL_EA_INFORMATION

FLT_CALLBACK_DATA

FLT_IO_PARAMETER_BLOCK

FLT_IS_FASTIO_OPERATION

FLT_IS_FS_FILTER_OPERATION

FLT_IS_IRP_OPERATION

FLT_PARAMETERS

IoCheckEaBufferValidity

IRP_MJ_QUERY_EA