FLT_IS_FS_FILTER_OPERATION macro (fltkernel.h)
The FLT_IS_FS_FILTER_OPERATION macro determines whether the given callback data structure represents a file system filter (FSFilter) callback operation.
Syntax
void FLT_IS_FS_FILTER_OPERATION(
Data
);
Parameters
Data
[in] A pointer to a callback data (FLT_CALLBACK_DATA) structure.
Return value
None
Remarks
FLT_IS_FS_FILTER_OPERATION returns a nonzero value if the FLTFL_CALLBACK_DATA_FS_FILTER_OPERATION flag is set in the callback data structure. Otherwise, it returns zero.
The FLT_IS_FS_FILTER_OPERATION macro checks whether the FLTFL_CALLBACK_DATA_FS_FILTER_OPERATION bit is set in the Flags member of the FLT_CALLBACK_DATA structure that the Data parameter points to. If this flag is set, the callback data structure represents one of the following file system filter (FSFilter) callback operations:
- IRP_MJ_ACQUIRE_FOR_CC_FLUSH
- IRP_MJ_ACQUIRE_FOR_MOD_WRITE
- IRP_MJ_ACQUIRE_FOR_SECTION_SYNCHRONIZATION
- IRP_MJ_RELEASE_FOR_CC_FLUSH
- IRP_MJ_RELEASE_FOR_MOD_WRITE
- IRP_MJ_RELEASE_FOR_SECTION_SYNCHRONIZATION
For information about specific FSFilter callback operations, see the reference entry for FsRtlRegisterFileSystemFilterCallbacks. Note that in the legacy filter driver model, filters used FsRtlRegisterFileSystemFilterCallbacks to register callback functions for various FSFilter callback operations. However, FsRtlRegisterFileSystemFilterCallbacks is not used in the minifilter driver model, and minifilter drivers should never call it.
The return type of FLT_IS_FS_FILTER_OPERATION is of the same type as the Flags member of the FLT_CALLBACK_DATA structure.
Requirements
Requirement | Value |
---|---|
Header | fltkernel.h |