Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Union component used when the MajorFunction field of the FLT_IO_PARAMETER_BLOCK structure for the operation is IRP_MJ_QUERY_EA.
Syntax
typedef union _FLT_PARAMETERS {
... ;
struct {
ULONG Length;
PVOID EaList;
ULONG EaListLength;
ULONG POINTER_ALIGNMENT EaIndex;
PVOID EaBuffer;
PMDL MdlAddress;
} QueryEa;
... ;
} FLT_PARAMETERS, *PFLT_PARAMETERS;
Members
QueryEa: Structure within FLT_PARAMETERS union containing the following members.
Length: Length, in bytes, of the buffer that EaBuffer points to.
EaList: Pointer to a caller-supplied, FILE_GET_EA_INFORMATION-structured input buffer specifying the extended attributes to be queried.
EaListLength: Length, in bytes, of the buffer that EaList points to.
EaIndex: Index of the entry at which to begin scanning the extended-attribute list. This parameter is ignored if the SL_INDEX_SPECIFIED flag is not set in the FLT_IO_PARAMETER_BLOCK structure for the operation or if EaList points to a nonempty list.
EaBuffer: Pointer to a caller-supplied, FILE_FULL_EA_INFORMATION-structured output buffer where the extended attribute values are to be returned. This member is optional and can be NULL if a MDL is provided in MdlAddress. See Remarks.
MdlAddress: Address of a memory descriptor list (MDL) describing the buffer that EaBuffer points to. This member is optional and can be NULL if a buffer is provided in EaBuffer. See Remarks.
Remarks
The FLT_PARAMETERS structure for IRP_MJ_QUERY_EA operations contains the parameters for an IRP-based query-extended-attributes-information operation represented by a callback data (FLT_CALLBACK_DATA) structure. It is contained in an FLT_IO_PARAMETER_BLOCK structure.
If both an EaBuffer and MdlAddress buffer are provided, it is recommended that minifilters use the MDL. The memory that EaBuffer points to is valid when it is a user mode address being accessed within the context of the calling process, or if it is a kernel mode address.
If a minifilter changes the value of MdlAddress, then after its post operation callback, Filter Manager will free the MDL currently stored in MdlAddress and restore the previous value of MdlAddress.
IRP_MJ_QUERY_EA is an IRP-based operation.
Requirements
Requirement type | Requirement |
---|---|
Header | Fltkernel.h (include Fltkernel.h) |