ReactOS  r74244
fltkernel.h File Reference
#include <ntifs.h>
#include <fltuserstructures.h>
#include <initguid.h>
#include "pshpack4.h"
#include "poppack.h"
Include dependency graph for fltkernel.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

union  _FLT_PARAMETERS
 
struct  _FLT_IO_PARAMETER_BLOCK
 
struct  _FLT_CALLBACK_DATA
 
struct  _FLT_RELATED_OBJECTS
 
struct  _FLT_RELATED_CONTEXTS
 
struct  _FLT_CONTEXT_REGISTRATION
 
struct  _FLT_OPERATION_REGISTRATION
 
struct  _FLT_TAG_DATA_BUFFER
 
struct  _FLT_NAME_CONTROL
 
struct  _FLT_REGISTRATION
 
struct  _FLT_FILE_NAME_INFORMATION
 
struct  _FLT_VOLUME_PROPERTIES
 
struct  _FLT_CALLBACK_DATA_QUEUE
 

Macros

#define __FLTKERNEL__
 
#define FLT_MGR_BASELINE
 
#define FLT_MGR_AFTER_XPSP2
 
#define FLT_MGR_LONGHORN   (NTDDI_VERSION >= NTDDI_VISTA)
 
#define FLT_MGR_WIN7   (NTDDI_VERSION >= NTDDI_WIN7)
 
#define FLT_ASSERT(_e)   NT_ASSERT(_e)
 
#define FLT_ASSERTMSG(_m, _e)   NT_ASSERTMSG(_m, _e)
 
#define Add2Ptr(P, I)   ((PVOID)((PUCHAR)(P) + (I)))
 
#define PtrOffset(B, O)   ((ULONG)((ULONG_PTR)(O) - (ULONG_PTR)(B)))
 
#define ROUND_TO_SIZE(_length, _alignment)   ((((ULONG_PTR)(_length)) + ((_alignment)-1)) & ~(ULONG_PTR) ((_alignment) - 1))
 
#define IS_ALIGNED(_pointer, _alignment)   ((((ULONG_PTR) (_pointer)) & ((_alignment) - 1)) == 0)
 
#define IRP_MJ_ACQUIRE_FOR_SECTION_SYNCHRONIZATION   ((UCHAR)-1)
 
#define IRP_MJ_RELEASE_FOR_SECTION_SYNCHRONIZATION   ((UCHAR)-2)
 
#define IRP_MJ_ACQUIRE_FOR_MOD_WRITE   ((UCHAR)-3)
 
#define IRP_MJ_RELEASE_FOR_MOD_WRITE   ((UCHAR)-4)
 
#define IRP_MJ_ACQUIRE_FOR_CC_FLUSH   ((UCHAR)-5)
 
#define IRP_MJ_RELEASE_FOR_CC_FLUSH   ((UCHAR)-6)
 
#define IRP_MJ_FAST_IO_CHECK_IF_POSSIBLE   ((UCHAR)-13)
 
#define IRP_MJ_NETWORK_QUERY_OPEN   ((UCHAR)-14)
 
#define IRP_MJ_MDL_READ   ((UCHAR)-15)
 
#define IRP_MJ_MDL_READ_COMPLETE   ((UCHAR)-16)
 
#define IRP_MJ_PREPARE_MDL_WRITE   ((UCHAR)-17)
 
#define IRP_MJ_MDL_WRITE_COMPLETE   ((UCHAR)-18)
 
#define IRP_MJ_VOLUME_MOUNT   ((UCHAR)-19)
 
#define IRP_MJ_VOLUME_DISMOUNT   ((UCHAR)-20)
 
#define IRP_MJ_OPERATION_END   ((UCHAR)0x80)
 
#define FLT_INTERNAL_OPERATION_COUNT   22
 
#define NULL_CONTEXT   ((PFLT_CONTEXT)NULL)
 
#define FLTFL_CALLBACK_DATA_REISSUE_MASK   0x0000FFFF
 
#define FLTFL_CALLBACK_DATA_IRP_OPERATION   0x00000001
 
#define FLTFL_CALLBACK_DATA_FAST_IO_OPERATION   0x00000002
 
#define FLTFL_CALLBACK_DATA_FS_FILTER_OPERATION   0x00000004
 
#define FLTFL_CALLBACK_DATA_SYSTEM_BUFFER   0x00000008
 
#define FLTFL_CALLBACK_DATA_GENERATED_IO   0x00010000
 
#define FLTFL_CALLBACK_DATA_REISSUED_IO   0x00020000
 
#define FLTFL_CALLBACK_DATA_DRAINING_IO   0x00040000
 
#define FLTFL_CALLBACK_DATA_POST_OPERATION   0x00080000
 
#define FLTFL_CALLBACK_DATA_NEW_SYSTEM_BUFFER   0x00100000
 
#define FLTFL_CALLBACK_DATA_DIRTY   0x80000000
 
#define FLT_SET_CALLBACK_DATA_DIRTY(Data)   FltSetCallbackDataDirty(Data)
 
#define FLT_CLEAR_CALLBACK_DATA_DIRTY(Data)   FltClearCallbackDataDirty(Data)
 
#define FLT_IS_CALLBACK_DATA_DIRTY(Data)   FltIsCallbackDataDirty(Data)
 
#define FLT_IS_IRP_OPERATION(Data)   (FlagOn((Data)->Flags, FLTFL_CALLBACK_DATA_IRP_OPERATION))
 
#define FLT_IS_FASTIO_OPERATION(Data)   (FlagOn((Data)->Flags, FLTFL_CALLBACK_DATA_FAST_IO_OPERATION))
 
#define FLT_IS_FS_FILTER_OPERATION(Data)   (FlagOn((Data)->Flags, FLTFL_CALLBACK_DATA_FS_FILTER_OPERATION))
 
#define FLT_IS_REISSUED_IO(Data)   (FlagOn((Data)->Flags, FLTFL_CALLBACK_DATA_REISSUED_IO))
 
#define FLT_IS_SYSTEM_BUFFER(Data)   (FlagOn((Data)->Flags, FLTFL_CALLBACK_DATA_SYSTEM_BUFFER))
 
#define FLT_VOLUME_CONTEXT   0x0001
 
#define FLT_INSTANCE_CONTEXT   0x0002
 
#define FLT_FILE_CONTEXT   0x0004
 
#define FLT_STREAM_CONTEXT   0x0008
 
#define FLT_STREAMHANDLE_CONTEXT   0x0010
 
#define FLT_TRANSACTION_CONTEXT   0x0020
 
#define FLT_CONTEXT_END   0xffff
 
#define FLT_ALL_CONTEXTS
 
#define FLT_ALLOCATE_CALLBACK_DATA_PREALLOCATE_ALL_MEMORY   0x00000001
 
#define FLTFL_CONTEXT_REGISTRATION_NO_EXACT_SIZE_MATCH   0x0001
 
#define FLT_VARIABLE_SIZED_CONTEXTS   ((SIZE_T)-1)
 
#define FLTFL_INSTANCE_SETUP_AUTOMATIC_ATTACHMENT   0x00000001
 
#define FLTFL_INSTANCE_SETUP_MANUAL_ATTACHMENT   0x00000002
 
#define FLTFL_INSTANCE_SETUP_NEWLY_MOUNTED_VOLUME   0x00000004
 
#define FLTFL_INSTANCE_SETUP_DETACHED_VOLUME   0x00000008
 
#define FLT_MAX_TRANSACTION_NOTIFICATIONS
 
#define FLTFL_INSTANCE_TEARDOWN_MANUAL   0x00000001
 
#define FLTFL_INSTANCE_TEARDOWN_FILTER_UNLOAD   0x00000002
 
#define FLTFL_INSTANCE_TEARDOWN_MANDATORY_FILTER_UNLOAD   0x00000004
 
#define FLTFL_INSTANCE_TEARDOWN_VOLUME_DISMOUNT   0x00000008
 
#define FLTFL_INSTANCE_TEARDOWN_INTERNAL_ERROR   0x00000010
 
#define FLTFL_POST_OPERATION_DRAINING   0x00000001
 
#define FLTFL_OPERATION_REGISTRATION_SKIP_PAGING_IO   0x00000001
 
#define FLTFL_OPERATION_REGISTRATION_SKIP_CACHED_IO   0x00000002
 
#define FLTFL_OPERATION_REGISTRATION_SKIP_NON_DASD_IO   0x00000004
 
#define FLT_TAG_DATA_BUFFER_HEADER_SIZE   FIELD_OFFSET(FLT_TAG_DATA_BUFFER, GenericReparseBuffer)
 
#define FLTFL_FILTER_UNLOAD_MANDATORY   0x00000001
 
#define FLTFL_NORMALIZE_NAME_CASE_SENSITIVE   0x01
 
#define FLTFL_NORMALIZE_NAME_DESTINATION_FILE_NAME   0x02
 
#define FLT_REGISTRATION_VERSION_0200   0x0200
 
#define FLT_REGISTRATION_VERSION_0201   0x0201
 
#define FLT_REGISTRATION_VERSION_0202   0x0202
 
#define FLT_REGISTRATION_VERSION_0203   0x0203
 
#define FLT_REGISTRATION_VERSION   FLT_REGISTRATION_VERSION_0202
 
#define FLTFL_REGISTRATION_DO_NOT_SUPPORT_SERVICE_STOP   0x00000001
 
#define FLTFL_REGISTRATION_SUPPORT_NPFS_MSFS   0x00000002
 
#define FLTFL_IO_OPERATION_NON_CACHED   0x00000001
 
#define FLTFL_IO_OPERATION_PAGING   0x00000002
 
#define FLTFL_IO_OPERATION_DO_NOT_UPDATE_BYTE_OFFSET   0x00000004
 
#define FLTFL_IO_OPERATION_SYNCHRONOUS_PAGING   0x00000008
 
#define FLT_VALID_FILE_NAME_FORMATS   0x000000ff
 
#define FLT_FILE_NAME_NORMALIZED   0x01
 
#define FLT_FILE_NAME_OPENED   0x02
 
#define FLT_FILE_NAME_SHORT   0x03
 
#define FltGetFileNameFormat(_NameOptions)   ((_NameOptions) & FLT_VALID_FILE_NAME_FORMATS)
 
#define FLT_VALID_FILE_NAME_QUERY_METHODS   0x0000ff00
 
#define FLT_FILE_NAME_QUERY_DEFAULT   0x0100
 
#define FLT_FILE_NAME_QUERY_CACHE_ONLY   0x0200
 
#define FLT_FILE_NAME_QUERY_FILESYSTEM_ONLY   0x0300
 
#define FLT_FILE_NAME_QUERY_ALWAYS_ALLOW_CACHE_LOOKUP   0x0400
 
#define FltGetFileNameQueryMethod(_NameOptions)   ((_NameOptions) & FLT_VALID_FILE_NAME_QUERY_METHODS)
 
#define FLT_VALID_FILE_NAME_FLAGS   0xff000000
 
#define FLT_FILE_NAME_REQUEST_FROM_CURRENT_PROVIDER   0x01000000
 
#define FLT_FILE_NAME_DO_NOT_CACHE   0x02000000
 
#define FLT_FILE_NAME_ALLOW_QUERY_ON_REPARSE   0x04000000
 
#define FLTFL_FILE_NAME_PARSED_FINAL_COMPONENT   0x0001
 
#define FLTFL_FILE_NAME_PARSED_EXTENSION   0x0002
 
#define FLTFL_FILE_NAME_PARSED_STREAM   0x0004
 
#define FLTFL_FILE_NAME_PARSED_PARENT_DIR   0x0008
 
#define FLT_PORT_CONNECT   0x0001
 
#define FLT_PORT_ALL_ACCESS   (FLT_PORT_CONNECT | STANDARD_RIGHTS_ALL)
 

Typedefs

typedef struct _FLT_FILTER * PFLT_FILTER
 
typedef struct _FLT_VOLUME * PFLT_VOLUME
 
typedef struct _FLT_INSTANCE * PFLT_INSTANCE
 
typedef struct _FLT_PORT * PFLT_PORT
 
typedef PVOID PFLT_CONTEXT
 
typedef union _FLT_PARAMETERS FLT_PARAMETERS
 
typedef union _FLT_PARAMETERSPFLT_PARAMETERS
 
typedef struct
_FLT_IO_PARAMETER_BLOCK 
FLT_IO_PARAMETER_BLOCK
 
typedef struct
_FLT_IO_PARAMETER_BLOCK
PFLT_IO_PARAMETER_BLOCK
 
typedef USHORT FLT_CONTEXT_TYPE
 
typedef ULONG FLT_CALLBACK_DATA_FLAGS
 
typedef ULONG FLT_ALLOCATE_CALLBACK_DATA_FLAGS
 
typedef struct _FLT_CALLBACK_DATA FLT_CALLBACK_DATA
 
typedef struct _FLT_CALLBACK_DATAPFLT_CALLBACK_DATA
 
typedef struct _FLT_RELATED_OBJECTS FLT_RELATED_OBJECTS
 
typedef struct
_FLT_RELATED_OBJECTS
PFLT_RELATED_OBJECTS
 
typedef const struct
_FLT_RELATED_OBJECTS
PCFLT_RELATED_OBJECTS
 
typedef struct
_FLT_RELATED_CONTEXTS 
FLT_RELATED_CONTEXTS
 
typedef struct
_FLT_RELATED_CONTEXTS
PFLT_RELATED_CONTEXTS
 
typedef VOID(FLTAPI * PFLT_CONTEXT_CLEANUP_CALLBACK )(_In_ PFLT_CONTEXT Context, _In_ FLT_CONTEXT_TYPE ContextType)
 
typedef PVOID(FLTAPI * PFLT_CONTEXT_ALLOCATE_CALLBACK )(_In_ POOL_TYPE PoolType, _In_ SIZE_T Size, _In_ FLT_CONTEXT_TYPE ContextType)
 
typedef VOID(FLTAPI * PFLT_CONTEXT_FREE_CALLBACK )(_In_ PVOID Pool, _In_ FLT_CONTEXT_TYPE ContextType)
 
typedef USHORT FLT_CONTEXT_REGISTRATION_FLAGS
 
typedef struct
_FLT_CONTEXT_REGISTRATION 
FLT_CONTEXT_REGISTRATION
 
typedef struct
_FLT_CONTEXT_REGISTRATION
PFLT_CONTEXT_REGISTRATION
 
typedef const struct
_FLT_CONTEXT_REGISTRATION
PCFLT_CONTEXT_REGISTRATION
 
typedef ULONG FLT_INSTANCE_SETUP_FLAGS
 
typedef NTSTATUS(FLTAPI * PFLT_INSTANCE_SETUP_CALLBACK )(_In_ PCFLT_RELATED_OBJECTS FltObjects, _In_ FLT_INSTANCE_SETUP_FLAGS Flags, _In_ DEVICE_TYPE VolumeDeviceType, _In_ FLT_FILESYSTEM_TYPE VolumeFilesystemType)
 
typedef ULONG FLT_INSTANCE_QUERY_TEARDOWN_FLAGS
 
typedef NTSTATUS(FLTAPI * PFLT_INSTANCE_QUERY_TEARDOWN_CALLBACK )(_In_ PCFLT_RELATED_OBJECTS FltObjects, _In_ FLT_INSTANCE_QUERY_TEARDOWN_FLAGS Flags)
 
typedef ULONG FLT_INSTANCE_TEARDOWN_FLAGS
 
typedef VOID(FLTAPI * PFLT_INSTANCE_TEARDOWN_CALLBACK )(_In_ PCFLT_RELATED_OBJECTS FltObjects, _In_ FLT_INSTANCE_TEARDOWN_FLAGS Reason)
 
typedef enum
_FLT_PREOP_CALLBACK_STATUS 
FLT_PREOP_CALLBACK_STATUS
 
typedef enum
_FLT_PREOP_CALLBACK_STATUS
PFLT_PREOP_CALLBACK_STATUS
 
typedef
FLT_PREOP_CALLBACK_STATUS(FLTAPI * 
PFLT_PRE_OPERATION_CALLBACK )(_Inout_ PFLT_CALLBACK_DATA Data, _In_ PCFLT_RELATED_OBJECTS FltObjects, _Outptr_result_maybenull_ PVOID *CompletionContext)
 
typedef enum
_FLT_POSTOP_CALLBACK_STATUS 
FLT_POSTOP_CALLBACK_STATUS
 
typedef enum
_FLT_POSTOP_CALLBACK_STATUS
PFLT_POSTOP_CALLBACK_STATUS
 
typedef ULONG FLT_POST_OPERATION_FLAGS
 
typedef
FLT_POSTOP_CALLBACK_STATUS(FLTAPI * 
PFLT_POST_OPERATION_CALLBACK )(_Inout_ PFLT_CALLBACK_DATA Data, _In_ PCFLT_RELATED_OBJECTS FltObjects, _In_opt_ PVOID CompletionContext, _In_ FLT_POST_OPERATION_FLAGS Flags)
 
typedef ULONG FLT_OPERATION_REGISTRATION_FLAGS
 
typedef struct
_FLT_OPERATION_REGISTRATION 
FLT_OPERATION_REGISTRATION
 
typedef struct
_FLT_OPERATION_REGISTRATION
PFLT_OPERATION_REGISTRATION
 
typedef struct _FLT_TAG_DATA_BUFFER FLT_TAG_DATA_BUFFER
 
typedef struct
_FLT_TAG_DATA_BUFFER
PFLT_TAG_DATA_BUFFER
 
typedef ULONG FLT_FILTER_UNLOAD_FLAGS
 
typedef NTSTATUS(FLTAPI * PFLT_FILTER_UNLOAD_CALLBACK )(FLT_FILTER_UNLOAD_FLAGS Flags)
 
typedef struct _FLT_NAME_CONTROL FLT_NAME_CONTROL
 
typedef struct _FLT_NAME_CONTROLPFLT_NAME_CONTROL
 
typedef ULONG FLT_FILE_NAME_OPTIONS
 
typedef NTSTATUS(FLTAPI * PFLT_GENERATE_FILE_NAME )(_In_ PFLT_INSTANCE Instance, _In_ PFILE_OBJECT FileObject, _In_opt_ PFLT_CALLBACK_DATA CallbackData, _In_ FLT_FILE_NAME_OPTIONS NameOptions, _Out_ PBOOLEAN CacheFileNameInformation, _Out_ PFLT_NAME_CONTROL FileName)
 
typedef ULONG FLT_NORMALIZE_NAME_FLAGS
 
typedef NTSTATUS(FLTAPI * PFLT_NORMALIZE_NAME_COMPONENT )(_In_ PFLT_INSTANCE Instance, _In_ PCUNICODE_STRING ParentDirectory, _In_ USHORT VolumeNameLength, _In_ PCUNICODE_STRING Component, _Out_writes_bytes_(ExpandComponentNameLength) PFILE_NAMES_INFORMATION ExpandComponentName, _In_ ULONG ExpandComponentNameLength, _In_ FLT_NORMALIZE_NAME_FLAGS Flags, _Inout_ PVOID *NormalizationContext)
 
typedef NTSTATUS(FLTAPI * PFLT_NORMALIZE_NAME_COMPONENT_EX )(_In_ PFLT_INSTANCE Instance, _In_ PFILE_OBJECT FileObject, _In_ PCUNICODE_STRING ParentDirectory, _In_ USHORT VolumeNameLength, _In_ PCUNICODE_STRING Component, _Out_writes_bytes_(ExpandComponentNameLength) PFILE_NAMES_INFORMATION ExpandComponentName, _In_ ULONG ExpandComponentNameLength, _In_ FLT_NORMALIZE_NAME_FLAGS Flags, _Inout_ PVOID *NormalizationContext)
 
typedef VOID(FLTAPI * PFLT_NORMALIZE_CONTEXT_CLEANUP )(_In_opt_ PVOID *NormalizationContext)
 
typedef NTSTATUS(FLTAPI * PFLT_TRANSACTION_NOTIFICATION_CALLBACK )(_In_ PCFLT_RELATED_OBJECTS FltObjects, _In_ PFLT_CONTEXT TransactionContext, _In_ ULONG NotificationMask)
 
typedef ULONG FLT_REGISTRATION_FLAGS
 
typedef struct _FLT_REGISTRATION FLT_REGISTRATION
 
typedef struct _FLT_REGISTRATIONPFLT_REGISTRATION
 
typedef VOID(FLTAPI * PFLT_COMPLETED_ASYNC_IO_CALLBACK )(_In_ PFLT_CALLBACK_DATA CallbackData, _In_ PFLT_CONTEXT Context)
 
typedef ULONG FLT_IO_OPERATION_FLAGS
 
typedef VOID(FLTAPI * PFLT_GET_OPERATION_STATUS_CALLBACK )(_In_ PCFLT_RELATED_OBJECTS FltObjects, _In_ PFLT_IO_PARAMETER_BLOCK IopbSnapshot, _In_ NTSTATUS OperationStatus, _In_opt_ PVOID RequesterContext)
 
typedef USHORT FLT_FILE_NAME_PARSED_FLAGS
 
typedef struct
_FLT_FILE_NAME_INFORMATION 
FLT_FILE_NAME_INFORMATION
 
typedef struct
_FLT_FILE_NAME_INFORMATION
PFLT_FILE_NAME_INFORMATION
 
typedef enum
_FLT_SET_CONTEXT_OPERATION 
FLT_SET_CONTEXT_OPERATION
 
typedef enum
_FLT_SET_CONTEXT_OPERATION
PFLT_SET_CONTEXT_OPERATION
 
typedef struct
_FLT_VOLUME_PROPERTIES 
FLT_VOLUME_PROPERTIES
 
typedef struct
_FLT_VOLUME_PROPERTIES
PFLT_VOLUME_PROPERTIES
 
typedef NTSTATUS(FLTAPI * PFLT_MESSAGE_NOTIFY )(_In_opt_ PVOID PortCookie, _In_reads_bytes_opt_(InputBufferLength) PVOID InputBuffer, _In_ ULONG InputBufferLength, _Out_writes_bytes_to_opt_(OutputBufferLength,*ReturnOutputBufferLength) PVOID OutputBuffer, _In_ ULONG OutputBufferLength, _Out_ PULONG ReturnOutputBufferLength)
 
typedef NTSTATUS(FLTAPI * PFLT_CONNECT_NOTIFY )(_In_ PFLT_PORT ClientPort, _In_opt_ PVOID ServerPortCookie, _In_reads_bytes_opt_(SizeOfContext) PVOID ConnectionContext, _In_ ULONG SizeOfContext, _Outptr_result_maybenull_ PVOID *ConnectionPortCookie)
 
typedef VOID(FLTAPI * PFLT_DISCONNECT_NOTIFY )(_In_opt_ PVOID ConnectionCookie)
 
typedef VOID(FLTAPI * PFLT_COMPLETE_CANCELED_CALLBACK )(_In_ PFLT_CALLBACK_DATA CallbackData)
 
typedef struct
_FLT_DEFERRED_IO_WORKITEM * 
PFLT_DEFERRED_IO_WORKITEM
 
typedef struct
_FLT_GENERIC_WORKITEM * 
PFLT_GENERIC_WORKITEM
 
typedef VOID(FLTAPI * PFLT_DEFERRED_IO_WORKITEM_ROUTINE )(_In_ PFLT_DEFERRED_IO_WORKITEM FltWorkItem, _In_ PFLT_CALLBACK_DATA CallbackData, _In_opt_ PVOID Context)
 
typedef VOID(FLTAPI * PFLT_GENERIC_WORKITEM_ROUTINE )(_In_ PFLT_GENERIC_WORKITEM FltWorkItem, _In_ PVOID FltObject, _In_opt_ PVOID Context)
 
typedef IO_CSQ_IRP_CONTEXT FLT_CALLBACK_DATA_QUEUE_IO_CONTEXT
 
typedef IO_CSQ_IRP_CONTEXTPFLT_CALLBACK_DATA_QUEUE_IO_CONTEXT
 
typedef struct
_FLT_CALLBACK_DATA_QUEUE 
FLT_CALLBACK_DATA_QUEUE
 
typedef struct
_FLT_CALLBACK_DATA_QUEUE
PFLT_CALLBACK_DATA_QUEUE
 
typedef NTSTATUS(FLTAPI * PFLT_CALLBACK_DATA_QUEUE_INSERT_IO )(_Inout_ PFLT_CALLBACK_DATA_QUEUE Cbdq, _In_ PFLT_CALLBACK_DATA Cbd, _In_opt_ PVOID InsertContext)
 
typedef VOID(FLTAPI * PFLT_CALLBACK_DATA_QUEUE_REMOVE_IO )(_Inout_ PFLT_CALLBACK_DATA_QUEUE Cbdq, _In_ PFLT_CALLBACK_DATA Cbd)
 
typedef PFLT_CALLBACK_DATA(FLTAPI * PFLT_CALLBACK_DATA_QUEUE_PEEK_NEXT_IO )(_In_ PFLT_CALLBACK_DATA_QUEUE Cbdq, _In_opt_ PFLT_CALLBACK_DATA Cbd, _In_opt_ PVOID PeekContext)
 
typedef VOID(FLTAPI * PFLT_CALLBACK_DATA_QUEUE_ACQUIRE )(_Inout_ PFLT_CALLBACK_DATA_QUEUE Cbdq, _Out_opt_ PKIRQL Irql)
 
typedef VOID(FLTAPI * PFLT_CALLBACK_DATA_QUEUE_RELEASE )(_Inout_ PFLT_CALLBACK_DATA_QUEUE Cbdq, _In_opt_ KIRQL Irql)
 
typedef VOID(FLTAPI * PFLT_CALLBACK_DATA_QUEUE_COMPLETE_CANCELED_IO )(_Inout_ PFLT_CALLBACK_DATA_QUEUE Cbdq, _Inout_ PFLT_CALLBACK_DATA Cbd)
 
typedef ULONG FLT_CALLBACK_DATA_QUEUE_FLAGS
 
typedef NTSTATUS(* PFLT_COMPLETE_LOCK_CALLBACK_DATA_ROUTINE )(_In_opt_ PVOID Context, _In_ PFLT_CALLBACK_DATA CallbackData)
 
typedef VOID(FLTAPI * PFLTOPLOCK_WAIT_COMPLETE_ROUTINE )(_In_ PFLT_CALLBACK_DATA CallbackData, _In_opt_ PVOID Context)
 
typedef VOID(FLTAPI * PFLTOPLOCK_PREPOST_CALLBACKDATA_ROUTINE )(_In_ PFLT_CALLBACK_DATA CallbackData, _In_opt_ PVOID Context)
 

Enumerations

enum  _FLT_PREOP_CALLBACK_STATUS {
  FLT_PREOP_SUCCESS_WITH_CALLBACK, FLT_PREOP_SUCCESS_NO_CALLBACK, FLT_PREOP_PENDING, FLT_PREOP_DISALLOW_FASTIO,
  FLT_PREOP_COMPLETE, FLT_PREOP_SYNCHRONIZE
}
 
enum  _FLT_POSTOP_CALLBACK_STATUS { FLT_POSTOP_FINISHED_PROCESSING, FLT_POSTOP_MORE_PROCESSING_REQUIRED }
 
enum  _FLT_SET_CONTEXT_OPERATION { FLT_SET_CONTEXT_REPLACE_IF_EXISTS, FLT_SET_CONTEXT_KEEP_IF_EXISTS }
 

Functions

VOID FLTAPI FltSetCallbackDataDirty (_Inout_ PFLT_CALLBACK_DATA Data)
 
VOID FLTAPI FltClearCallbackDataDirty (_Inout_ PFLT_CALLBACK_DATA Data)
 
BOOLEAN FLTAPI FltIsCallbackDataDirty (_In_ PFLT_CALLBACK_DATA Data)
 
_Must_inspect_result_ BOOLEAN
FLTAPI 
FltDoCompletionProcessingWhenSafe (_In_ PFLT_CALLBACK_DATA Data, _In_ PCFLT_RELATED_OBJECTS FltObjects, _In_opt_ PVOID CompletionContext, _In_ FLT_POST_OPERATION_FLAGS Flags, _In_ PFLT_POST_OPERATION_CALLBACK SafePostCallback, _Out_ PFLT_POSTOP_CALLBACK_STATUS RetPostOperationStatus)
 
_Must_inspect_result_ _IRQL_requires_max_ (APC_LEVEL) NTSTATUS FLTAPI FltCheckAndGrowNameControl(_Inout_ PFLT_NAME_CONTROL NameCtrl
 
 _When_ (CallbackStatus==FLT_PREOP_COMPLETE, _IRQL_requires_max_(DISPATCH_LEVEL)) _When_(CallbackStatus!
 
 _IRQL_requires_max_ (DISPATCH_LEVEL) VOID FLTAPI FltCompletePendedPostOperation(_In_ PFLT_CALLBACK_DATA CallbackData)
 
 _When_ ((PoolType==NonPagedPoolNx), _IRQL_requires_max_(DISPATCH_LEVEL)) _When_((PoolType!
 
_Must_inspect_result_ _In_
PFILE_OBJECT _In_opt_ HANDLE 
_In_reads_bytes_ (FileNameLength) PWSTR FileName
 
_Must_inspect_result_ _IRQL_requires_max_ (PASSIVE_LEVEL) NTSTATUS FLTAPI FltLoadFilter(_In_ PCUNICODE_STRING FilterName)
 
 _When_ (FlagOn(CallbackData->Iopb->IrpFlags, IRP_PAGING_IO), _IRQL_requires_max_(APC_LEVEL)) _When_(!FlagOn(CallbackData-> Iopb->IrpFlags, IRP_PAGING_IO), _IRQL_requires_max_(PASSIVE_LEVEL)) VOID FLTAPI FltPerformSynchronousIo(_Inout_ PFLT_CALLBACK_DATA CallbackData)
 
_Must_inspect_result_ _In_opt_
PFLT_INSTANCE _Out_ PHANDLE
_In_ ACCESS_MASK _In_
POBJECT_ATTRIBUTES _Out_
PIO_STATUS_BLOCK _In_opt_
PLARGE_INTEGER _In_ ULONG _In_
ULONG _In_ ULONG _In_ ULONG 
_In_reads_bytes_opt_ (EaLength) PVOID EaBuffer
 
_Must_inspect_result_ _In_
PFILE_OBJECT _In_opt_
PLARGE_INTEGER _In_ ULONG 
_Out_writes_bytes_to_ (Length,*BytesRead) PVOID Buffer
 
_Must_inspect_result_ _In_
PFILE_OBJECT _In_ ULONG
_In_opt_ GUID 
_In_reads_bytes_ (DataBufferLength) PVOID DataBuffer
 
_Must_inspect_result_ _In_
PFILE_OBJECT _In_opt_
PLARGE_INTEGER _In_ ULONG 
_In_reads_bytes_ (Length) PVOID Buffer
 
_Must_inspect_result_ _In_
PFILE_OBJECT _In_
SECURITY_INFORMATION 
_Inout_updates_bytes_opt_ (Length) PSECURITY_DESCRIPTOR SecurityDescriptor
 
_Must_inspect_result_ _In_
PFILE_OBJECT _In_ ULONG 
_In_reads_bytes_opt_ (InputBufferLength) PVOID InputBuffer
 
_Must_inspect_result_ _In_
PFILE_OBJECT _In_ ULONG _In_
ULONG 
_Out_writes_bytes_to_opt_ (OutputBufferLength,*LengthReturned) PVOID OutputBuffer
 
_Must_inspect_result_ _In_
FLT_CONTEXT_TYPE _In_ SIZE_T
_In_ POOL_TYPE 
_Outptr_result_bytebuffer_ (ContextSize) PFLT_CONTEXT *ReturnedContext)
 
LONG FLTAPI FltCompareInstanceAltitudes (_In_ PFLT_INSTANCE Instance1, _In_ PFLT_INSTANCE Instance2)
 
_In_ FILTER_INFORMATION_CLASS _Out_writes_bytes_to_opt_ (BufferSize,*BytesReturned) PVOID Buffer
 
 _Out_writes_bytes_to_opt_ (VolumePropertiesLength,*LengthReturned) PFLT_VOLUME_PROPERTIES VolumeProperties
 
_Must_inspect_result_ _Out_
PIO_STATUS_BLOCK 
_Out_writes_bytes_ (Length) PVOID FsInformation
 
_Must_inspect_result_ _Out_writes_to_opt_ (VolumeListSize,*NumberVolumesReturned) PFLT_VOLUME *VolumeList
 
_Must_inspect_result_ _In_opt_
PFLT_FILTER 
_Out_writes_to_opt_ (InstanceListSize,*NumberInstancesReturned) PFLT_INSTANCE *InstanceList
 
_Must_inspect_result_ _In_
PFLT_PORT 
_In_reads_bytes_ (SenderBufferLength) PVOID SenderBuffer
 
BOOLEAN FLTAPI FltIsIoCanceled (_In_ PFLT_CALLBACK_DATA CallbackData)
 
NTSTATUS FLTAPI FltDecodeParameters (_In_ PFLT_CALLBACK_DATA CallbackData, _Outptr_opt_ PMDL **MdlAddressPointer, _Outptr_opt_result_bytebuffer_(**Length) PVOID **Buffer, _Outptr_opt_ PULONG *Length, _Out_opt_ LOCK_OPERATION *DesiredAccess)
 
PMDL FASTCALL FltGetSwappedBufferMdlAddress (_In_ PFLT_CALLBACK_DATA CallbackData)
 
VOID FASTCALL FltRetainSwappedBufferMdlAddress (_In_ PFLT_CALLBACK_DATA CallbackData)
 
NTSTATUS FLTAPI FltCbdqInitialize (_In_ PFLT_INSTANCE Instance, _Inout_ PFLT_CALLBACK_DATA_QUEUE Cbdq, _In_ PFLT_CALLBACK_DATA_QUEUE_INSERT_IO CbdqInsertIo, _In_ PFLT_CALLBACK_DATA_QUEUE_REMOVE_IO CbdqRemoveIo, _In_ PFLT_CALLBACK_DATA_QUEUE_PEEK_NEXT_IO CbdqPeekNextIo, _In_ PFLT_CALLBACK_DATA_QUEUE_ACQUIRE CbdqAcquire, _In_ PFLT_CALLBACK_DATA_QUEUE_RELEASE CbdqRelease, _In_ PFLT_CALLBACK_DATA_QUEUE_COMPLETE_CANCELED_IO CbdqCompleteCanceledIo)
 
VOID FLTAPI FltCbdqEnable (_Inout_ PFLT_CALLBACK_DATA_QUEUE Cbdq)
 
VOID FLTAPI FltCbdqDisable (_Inout_ PFLT_CALLBACK_DATA_QUEUE Cbdq)
 
_Must_inspect_result_ NTSTATUS
FLTAPI 
FltCbdqInsertIo (_Inout_ PFLT_CALLBACK_DATA_QUEUE Cbdq, _In_ PFLT_CALLBACK_DATA Cbd, _In_opt_ PFLT_CALLBACK_DATA_QUEUE_IO_CONTEXT Context, _In_opt_ PVOID InsertContext)
 
_Must_inspect_result_
PFLT_CALLBACK_DATA FLTAPI 
FltCbdqRemoveIo (_Inout_ PFLT_CALLBACK_DATA_QUEUE Cbdq, _In_ PFLT_CALLBACK_DATA_QUEUE_IO_CONTEXT Context)
 
_Must_inspect_result_
PFLT_CALLBACK_DATA FLTAPI 
FltCbdqRemoveNextIo (_Inout_ PFLT_CALLBACK_DATA_QUEUE Cbdq, _In_opt_ PVOID PeekContext)
 
VOID FLTAPI FltInitializeFileLock (_Out_ PFILE_LOCK FileLock)
 
VOID FLTAPI FltUninitializeFileLock (_In_ PFILE_LOCK FileLock)
 
 _Acquires_lock_ (_Global_critical_region_) _IRQL_requires_max_(APC_LEVEL) VOID FLTAPI FltAcquireResourceExclusive(_Inout_ _Requires_lock_not_held_(*_Curr_) _Acquires_lock_(*_Curr_) PERESOURCE Resource)
 
 _Releases_lock_ (_Global_critical_region_) _IRQL_requires_max_(DISPATCH_LEVEL) VOID FLTAPI FltReleaseResource(_Inout_ _Requires_lock_held_(*_Curr_) _Releases_lock_(*_Curr_) PERESOURCE Resource)
 
BOOLEAN FLTAPI FltIsOperationSynchronous (_In_ PFLT_CALLBACK_DATA CallbackData)
 
PCHAR FLTAPI FltGetIrpName (_In_ UCHAR IrpMajorCode)
 
_Must_inspect_result_ _In_
PFILE_OBJECT _In_ ULONG _In_
BOOLEAN 
_In_reads_bytes_opt_ (EaListLength) PVOID EaList
 
_Must_inspect_result_ _When_ (((CallbackData!=NULL)&&FLT_IS_IRP_OPERATION(CallbackData)), _IRQL_requires_max_(PASSIVE_LEVEL)) _When_((!((CallbackData!
 
_Must_inspect_result_ _IRQL_requires_max_ (DPC_LEVEL) PVOID FLTAPI FltGetNewSystemBufferAddress(_In_ PFLT_CALLBACK_DATA CallbackData)
 
BOOLEAN FLTAPI FltOplockKeysEqual (_In_opt_ PFILE_OBJECT Fo1, _In_opt_ PFILE_OBJECT Fo2)
 

Variables

_Must_inspect_result_ _In_ USHORT NewSize
 
_Must_inspect_result_ _In_opt_
PFILE_OBJECT 
FileObject
 
_Must_inspect_result_ _In_
CONST FLT_REGISTRATION
Registration
 
_Must_inspect_result_ _In_
CONST FLT_REGISTRATION
_Outptr_ PFLT_FILTER
RetFilter
 
_In_ FLT_PREOP_CALLBACK_STATUS CallbackStatus
 
_In_ FLT_PREOP_CALLBACK_STATUS
_In_opt_ PVOID 
Context
 
_Must_inspect_result_ _In_
PFLT_GET_OPERATION_STATUS_CALLBACK 
CallbackRoutine
 
_Must_inspect_result_ _In_
PFLT_GET_OPERATION_STATUS_CALLBACK
_In_opt_ PVOID 
RequesterContext
 
_In_ PVOID Buffer
 
_In_ PVOID _In_ ULONG Tag
 
_Must_inspect_result_ _In_
FLT_FILE_NAME_OPTIONS 
NameOptions
 
_Must_inspect_result_ _In_
FLT_FILE_NAME_OPTIONS _Outptr_
PFLT_FILE_NAME_INFORMATION
FileNameInformation
 
_Must_inspect_result_ _In_opt_
PFLT_INSTANCE 
Instance
 
_Inout_opt_ PUNICODE_STRING Extension
 
_Inout_opt_ PUNICODE_STRING
_Inout_opt_ PUNICODE_STRING 
Stream
 
_Inout_opt_ PUNICODE_STRING
_Inout_opt_ PUNICODE_STRING
_Inout_opt_ PUNICODE_STRING 
FinalComponent
 
_Must_inspect_result_ _In_
PFLT_FILE_NAME_INFORMATION
_Outptr_result_maybenull_
PFLT_FILE_NAME_INFORMATION
RetTunneledFileNameInformation
 
_Must_inspect_result_
_Inout_opt_ PUNICODE_STRING 
VolumeName
 
_Must_inspect_result_
_Inout_opt_ PUNICODE_STRING
_Out_opt_ PULONG 
BufferSizeNeeded
 
_Must_inspect_result_ _In_
PFILE_OBJECT _In_opt_ HANDLE 
RootDirectory
 
_Must_inspect_result_ _In_
PFILE_OBJECT _In_opt_ HANDLE
_In_ ULONG 
FileNameLength
 
_Must_inspect_result_ _In_
PFILE_OBJECT _In_opt_ HANDLE
_In_ ULONG _In_
FLT_FILE_NAME_OPTIONS _Outptr_
PFLT_FILE_NAME_INFORMATION
RetFileNameInformation
 
_Must_inspect_result_ _In_
PFLT_INSTANCE _Out_ PBOOLEAN 
IsDirectory
 
_Must_inspect_result_ _Inout_
PFLT_VOLUME 
Volume
 
_Must_inspect_result_ _Inout_
PFLT_VOLUME _In_opt_
PCUNICODE_STRING 
InstanceName
 
_Must_inspect_result_ _Inout_
PFLT_VOLUME _In_opt_
PCUNICODE_STRING
_Outptr_opt_result_maybenull_
PFLT_INSTANCE
RetInstance
 
_Must_inspect_result_ _Inout_
PFLT_VOLUME _In_
PCUNICODE_STRING 
Altitude
 
_Must_inspect_result_ _In_opt_
PFILE_OBJECT _Outptr_
PFLT_CALLBACK_DATA
RetNewCallbackData
 
_Must_inspect_result_ _In_opt_
PFLT_INSTANCE _Out_ PHANDLE 
FileHandle
 
_Must_inspect_result_ _In_opt_
PFLT_INSTANCE _Out_ PHANDLE
_In_ ACCESS_MASK 
DesiredAccess
 
_Must_inspect_result_ _In_opt_
PFLT_INSTANCE _Out_ PHANDLE
_In_ ACCESS_MASK _In_
POBJECT_ATTRIBUTES 
ObjectAttributes
 
_Must_inspect_result_ _In_opt_
PFLT_INSTANCE _Out_ PHANDLE
_In_ ACCESS_MASK _In_
POBJECT_ATTRIBUTES _Out_
PIO_STATUS_BLOCK 
IoStatusBlock
 
_Must_inspect_result_ _In_opt_
PFLT_INSTANCE _Out_ PHANDLE
_In_ ACCESS_MASK _In_
POBJECT_ATTRIBUTES _Out_
PIO_STATUS_BLOCK _In_opt_
PLARGE_INTEGER 
AllocationSize
 
_Must_inspect_result_ _In_opt_
PFLT_INSTANCE _Out_ PHANDLE
_In_ ACCESS_MASK _In_
POBJECT_ATTRIBUTES _Out_
PIO_STATUS_BLOCK _In_opt_
PLARGE_INTEGER _In_ ULONG 
FileAttributes
 
_Must_inspect_result_ _In_opt_
PFLT_INSTANCE _Out_ PHANDLE
_In_ ACCESS_MASK _In_
POBJECT_ATTRIBUTES _Out_
PIO_STATUS_BLOCK _In_opt_
PLARGE_INTEGER _In_ ULONG _In_
ULONG 
ShareAccess
 
_Must_inspect_result_ _In_opt_
PFLT_INSTANCE _Out_ PHANDLE
_In_ ACCESS_MASK _In_
POBJECT_ATTRIBUTES _Out_
PIO_STATUS_BLOCK _In_opt_
PLARGE_INTEGER _In_ ULONG _In_
ULONG _In_ ULONG 
CreateDisposition
 
_Must_inspect_result_ _In_opt_
PFLT_INSTANCE _Out_ PHANDLE
_In_ ACCESS_MASK _In_
POBJECT_ATTRIBUTES _Out_
PIO_STATUS_BLOCK _In_opt_
PLARGE_INTEGER _In_ ULONG _In_
ULONG _In_ ULONG _In_ ULONG 
CreateOptions
 
_Must_inspect_result_ _In_opt_
PFLT_INSTANCE _Out_ PHANDLE
_In_ ACCESS_MASK _In_
POBJECT_ATTRIBUTES _Out_
PIO_STATUS_BLOCK _In_opt_
PLARGE_INTEGER _In_ ULONG _In_
ULONG _In_ ULONG _In_ ULONG
_In_ ULONG 
EaLength
 
_Must_inspect_result_ _In_opt_
PFLT_INSTANCE _Out_ PHANDLE
_In_ ACCESS_MASK _In_
POBJECT_ATTRIBUTES _Out_
PIO_STATUS_BLOCK _In_opt_
PLARGE_INTEGER _In_ ULONG _In_
ULONG _In_ ULONG _In_ ULONG
_In_ ULONG _In_ ULONG 
Flags
 
_Must_inspect_result_ _In_
PFILE_OBJECT _In_opt_
PLARGE_INTEGER 
ByteOffset
 
_Must_inspect_result_ _In_
PFILE_OBJECT _In_opt_
PLARGE_INTEGER _In_ ULONG 
Length
 
_Must_inspect_result_ _In_
PFILE_OBJECT _In_opt_
PLARGE_INTEGER _In_ ULONG _In_
FLT_IO_OPERATION_FLAGS
_Out_opt_ PULONG 
BytesRead
 
_Must_inspect_result_ _In_
PFILE_OBJECT _In_opt_
PLARGE_INTEGER _In_ ULONG _In_
FLT_IO_OPERATION_FLAGS
_Out_opt_ PULONG _In_opt_
PFLT_COMPLETED_ASYNC_IO_CALLBACK
_In_opt_ PVOID 
CallbackContext
 
_Must_inspect_result_ _In_
PFILE_OBJECT _In_ ULONG 
FileTag
 
_Must_inspect_result_ _In_
PFILE_OBJECT _In_ ULONG
_In_opt_ GUID
Guid
 
_Must_inspect_result_ _In_
PFILE_OBJECT _In_ ULONG
_In_opt_ GUID _In_ USHORT 
DataBufferLength
 
_Must_inspect_result_ _In_
PFILE_OBJECT _In_opt_
PLARGE_INTEGER _In_ ULONG _In_
FLT_IO_OPERATION_FLAGS
_Out_opt_ PULONG 
BytesWritten
 
_Must_inspect_result_ _In_
PFILE_OBJECT _In_ ULONG _In_
FILE_INFORMATION_CLASS 
FileInformationClass
 
_Must_inspect_result_ _In_
PFILE_OBJECT _In_ ULONG _In_
FILE_INFORMATION_CLASS
_Out_opt_ PULONG 
LengthReturned
 
_Must_inspect_result_ _In_
PFILE_OBJECT _In_ ULONG _In_
FS_INFORMATION_CLASS 
FsInformationClass
 
_Must_inspect_result_ _In_
PFILE_OBJECT _In_
SECURITY_INFORMATION 
SecurityInformation
 
_Must_inspect_result_ _In_
PFILE_OBJECT _In_
SECURITY_INFORMATION _In_
ULONG _Out_opt_ PULONG 
LengthNeeded
 
_Must_inspect_result_ _In_
PFILE_OBJECT _In_
SECURITY_INFORMATION _In_
PSECURITY_DESCRIPTOR 
SecurityDescriptor
 
_Must_inspect_result_ _In_
PFILE_OBJECT _In_ ULONG 
FsControlCode
 
_Must_inspect_result_ _In_
PFILE_OBJECT _In_ ULONG _In_
ULONG 
InputBufferLength
 
_Must_inspect_result_ _In_
PFILE_OBJECT _In_ ULONG _In_
ULONG _In_ ULONG 
OutputBufferLength
 
_Must_inspect_result_ _In_
PFILE_OBJECT _In_ ULONG 
IoControlCode
 
_Must_inspect_result_ _In_
FLT_CONTEXT_TYPE 
ContextType
 
_Must_inspect_result_ _In_
FLT_CONTEXT_TYPE _In_ SIZE_T 
ContextSize
 
_Must_inspect_result_ _In_
FLT_CONTEXT_TYPE _In_ SIZE_T
_In_ POOL_TYPE 
PoolType
 
_In_ FLT_CONTEXT_TYPE DesiredContexts
 
_In_ FLT_CONTEXT_TYPE _Out_
PFLT_RELATED_CONTEXTS 
Contexts
 
_In_ FLT_SET_CONTEXT_OPERATION Operation
 
_In_ FLT_SET_CONTEXT_OPERATION
_In_ PFLT_CONTEXT 
NewContext
 
_In_ FLT_SET_CONTEXT_OPERATION
_In_ PFLT_CONTEXT
_Outptr_opt_result_maybenull_
PFLT_CONTEXT
OldContext
 
_In_ PCUNICODE_STRING _Outptr_
PFLT_VOLUME
RetVolume
 
_In_ PDEVICE_OBJECT DeviceObject
 
_Outptr_ PDEVICE_OBJECTDiskDeviceObject
 
_Outptr_ PFLT_INSTANCELowerInstance
 
_Outptr_ PFLT_INSTANCEUpperInstance
 
_In_ FILTER_INFORMATION_CLASS InformationClass
 
_In_ FILTER_INFORMATION_CLASS
_In_ ULONG 
BufferSize
 
_In_ FILTER_INFORMATION_CLASS
_In_ ULONG _Out_ PULONG 
BytesReturned
 
_In_ ULONG VolumePropertiesLength
 
_Must_inspect_result_ _Out_
PBOOLEAN 
IsWritable
 
_Must_inspect_result_ _Out_
PUNICODE_STRING 
VolumeGuidName
 
_Must_inspect_result_ _Out_
PIO_STATUS_BLOCK 
Iosb
 
_Must_inspect_result_
*NumberFiltersReturned
PFLT_FILTER
FilterList
 
_Must_inspect_result_
*NumberFiltersReturned
PFLT_FILTER _In_ ULONG 
FilterListSize
 
_Must_inspect_result_
*NumberFiltersReturned
PFLT_FILTER _In_ ULONG _Out_
PULONG 
NumberFiltersReturned
 
_Must_inspect_result_ _In_ ULONG VolumeListSize
 
_Must_inspect_result_ _In_
ULONG _Out_ PULONG 
NumberVolumesReturned
 
_Must_inspect_result_ _In_opt_
PFLT_FILTER 
Filter
 
_Must_inspect_result_ _In_opt_
PFLT_FILTER _In_ ULONG 
InstanceListSize
 
_Must_inspect_result_ _In_opt_
PFLT_FILTER _In_ ULONG _Out_
PULONG 
NumberInstancesReturned
 
_Must_inspect_result_ _In_ ULONG Index
 
_Must_inspect_result_ _Outptr_
PFLT_PORT
ServerPort
 
_Must_inspect_result_ _Outptr_
PFLT_PORT _In_
POBJECT_ATTRIBUTES _In_opt_
PVOID 
ServerPortCookie
 
_Must_inspect_result_ _Outptr_
PFLT_PORT _In_
POBJECT_ATTRIBUTES _In_opt_
PVOID _In_ PFLT_CONNECT_NOTIFY 
ConnectNotifyCallback
 
_Must_inspect_result_ _Outptr_
PFLT_PORT _In_
POBJECT_ATTRIBUTES _In_opt_
PVOID _In_ PFLT_CONNECT_NOTIFY
_In_ PFLT_DISCONNECT_NOTIFY 
DisconnectNotifyCallback
 
_Must_inspect_result_ _Outptr_
PFLT_PORT _In_
POBJECT_ATTRIBUTES _In_opt_
PVOID _In_ PFLT_CONNECT_NOTIFY
_In_ PFLT_DISCONNECT_NOTIFY
_In_opt_ PFLT_MESSAGE_NOTIFY 
MessageNotifyCallback
 
_Must_inspect_result_ _Outptr_
PFLT_PORT _In_
POBJECT_ATTRIBUTES _In_opt_
PVOID _In_ PFLT_CONNECT_NOTIFY
_In_ PFLT_DISCONNECT_NOTIFY
_In_opt_ PFLT_MESSAGE_NOTIFY
_In_ LONG 
MaxConnections
 
_Outptr_ PFLT_PORTClientPort
 
_Must_inspect_result_ _In_
PFLT_PORT _In_ ULONG 
SenderBufferLength
 
_Must_inspect_result_ _In_
PFLT_PORT _In_ ULONG
_Out_writes_bytes_opt_
ReplyLength PVOID 
ReplyBuffer
 
_Must_inspect_result_ _In_
PFLT_PORT _In_ ULONG
_Out_writes_bytes_opt_
ReplyLength PVOID _Inout_opt_
PULONG 
ReplyLength
 
_Must_inspect_result_ _In_
PFLT_PORT _In_ ULONG
_Out_writes_bytes_opt_
ReplyLength PVOID _Inout_opt_
PULONG _In_opt_ PLARGE_INTEGER 
Timeout
 
_In_
PFLT_COMPLETE_CANCELED_CALLBACK 
CanceledCallback
 
_Must_inspect_result_ _In_
PFLT_CALLBACK_DATA 
Data
 
_Must_inspect_result_ _In_
PFLT_CALLBACK_DATA _In_
PFLT_DEFERRED_IO_WORKITEM_ROUTINE 
WorkerRoutine
 
_Must_inspect_result_ _In_
PFLT_CALLBACK_DATA _In_
PFLT_DEFERRED_IO_WORKITEM_ROUTINE
_In_ WORK_QUEUE_TYPE 
QueueType
 
_Must_inspect_result_ _In_ PVOID FltObject
 
_Must_inspect_result_ _In_
PFLT_CALLBACK_DATA 
CallbackData
 
_Must_inspect_result_ _In_
PFLT_CALLBACK_DATA _In_ ULONG 
OpenCount
 
_Must_inspect_result_ _In_
PFLT_CALLBACK_DATA _In_opt_
PVOID _In_opt_
PFLTOPLOCK_WAIT_COMPLETE_ROUTINE 
WaitCompletionRoutine
 
_Must_inspect_result_ _In_
PFLT_CALLBACK_DATA _In_opt_
PVOID _In_opt_
PFLTOPLOCK_WAIT_COMPLETE_ROUTINE
_In_opt_
PFLTOPLOCK_PREPOST_CALLBACKDATA_ROUTINE 
PrePostCallbackDataRoutine
 
_Must_inspect_result_ _In_opt_
PUNLOCK_ROUTINE 
UnlockRoutine
 
_Inout_ PLIST_ENTRY NotifyList
 
_Inout_ PLIST_ENTRY _In_ PVOID FsContext
 
_Inout_ PLIST_ENTRY _In_ PVOID
_In_ PSTRING 
FullDirectoryName
 
_Inout_ PLIST_ENTRY _In_ PVOID
_In_ PSTRING _In_ BOOLEAN 
WatchTree
 
_Inout_ PLIST_ENTRY _In_ PVOID
_In_ PSTRING _In_ BOOLEAN _In_
BOOLEAN 
IgnoreBuffer
 
_Inout_ PLIST_ENTRY _In_ PVOID
_In_ PSTRING _In_ BOOLEAN _In_
BOOLEAN _In_ ULONG 
CompletionFilter
 
_Inout_ PLIST_ENTRY _In_ PVOID
_In_ PSTRING _In_ BOOLEAN _In_
BOOLEAN _In_ ULONG _In_
PFLT_CALLBACK_DATA 
NotifyCallbackData
 
_Inout_ PLIST_ENTRY _In_ PVOID
_In_ PSTRING _In_ BOOLEAN _In_
BOOLEAN _In_ ULONG _In_
PFLT_CALLBACK_DATA _In_opt_
PCHECK_FOR_TRAVERSE_ACCESS 
TraverseCallback
 
_Inout_ PLIST_ENTRY _In_ PVOID
_In_ PSTRING _In_ BOOLEAN _In_
BOOLEAN _In_ ULONG _In_
PFLT_CALLBACK_DATA _In_opt_
PCHECK_FOR_TRAVERSE_ACCESS
_In_opt_
PSECURITY_SUBJECT_CONTEXT 
SubjectContext
 
_Inout_ PLIST_ENTRY _In_ PVOID
_In_ PSTRING _In_ BOOLEAN _In_
BOOLEAN _In_ ULONG _In_
PFLT_CALLBACK_DATA _In_opt_
PCHECK_FOR_TRAVERSE_ACCESS
_In_opt_
PSECURITY_SUBJECT_CONTEXT
_In_opt_ PFILTER_REPORT_CHANGE 
FilterCallback
 
_Must_inspect_result_ _Out_ PHANDLE VolumeHandle
 
_Must_inspect_result_ _Out_
PHANDLE _Outptr_opt_
PFILE_OBJECT
VolumeFileObject
 
_Must_inspect_result_ _In_
PFILE_OBJECT _In_ ULONG _In_
BOOLEAN 
ReturnSingleEntry
 
_Must_inspect_result_ _In_
PFILE_OBJECT _In_ ULONG _In_
BOOLEAN _In_ ULONG 
EaListLength
 
_Must_inspect_result_ _In_
PFILE_OBJECT _In_ ULONG _In_
BOOLEAN _In_ ULONG _In_opt_
PULONG 
EaIndex
 
_Must_inspect_result_ _In_
PFILE_OBJECT _In_ ULONG _In_
BOOLEAN _In_ ULONG _In_opt_
PULONG _In_ BOOLEAN 
RestartScan
 
_Must_inspect_result_ _In_opt_
PFLT_INSTANCE _Out_ PHANDLE
_Outptr_opt_ PFILE_OBJECT _In_
ACCESS_MASK _In_
POBJECT_ATTRIBUTES _Out_
PIO_STATUS_BLOCK _In_opt_
PLARGE_INTEGER _In_ ULONG _In_
ULONG _In_ ULONG _In_ ULONG
_In_ ULONG _In_ ULONG _In_opt_
PIO_DRIVER_CREATE_CONTEXT 
DriverContext
 
_Must_inspect_result_ _In_
PFILE_OBJECT _In_ ULONG _In_
FILE_INFORMATION_CLASS _In_
BOOLEAN _In_opt_
PUNICODE_STRING 
FileName
 
_In_ PKTRANSACTION Transaction
 
_Out_ PFLT_FILESYSTEM_TYPE FileSystemType
 
_Must_inspect_result_ _Out_
PBOOLEAN 
IsSnapshotVolume
 
_Must_inspect_result_ _In_
PKTRANSACTION _In_
PFLT_CONTEXT 
TransactionContext
 
_Must_inspect_result_ _In_
PKTRANSACTION _In_
PFLT_CONTEXT _In_
NOTIFICATION_MASK 
NotificationMask
 
_Must_inspect_result_ _In_
FSRTL_ALLOCATE_ECPLIST_FLAGS
_Outptr_ PECP_LIST
EcpList
 
_Must_inspect_result_ _In_ LPCGUID EcpType
 
_Must_inspect_result_ _In_
LPCGUID ULONG 
SizeOfContext
 
_Must_inspect_result_ _In_
LPCGUID ULONG _In_
FSRTL_ALLOCATE_ECP_FLAGS
_In_opt_
PFSRTL_EXTRA_CREATE_PARAMETER_CLEANUP_CALLBACK 
CleanupCallback
 
_Must_inspect_result_ _In_
LPCGUID ULONG _In_
FSRTL_ALLOCATE_ECP_FLAGS
_In_opt_
PFSRTL_EXTRA_CREATE_PARAMETER_CLEANUP_CALLBACK
_In_ ULONG 
PoolTag
 
_Must_inspect_result_ _In_
LPCGUID ULONG _In_
FSRTL_ALLOCATE_ECP_FLAGS
_In_opt_
PFSRTL_EXTRA_CREATE_PARAMETER_CLEANUP_CALLBACK
_In_ ULONG _Outptr_ PVOID
EcpContext
 
_Inout_ PVOID Lookaside
 
_Inout_ PVOID _In_
FSRTL_ECP_LOOKASIDE_FLAGS _In_
SIZE_T 
Size
 
_Must_inspect_result_ _In_
LPCGUID _In_ ULONG _In_
FSRTL_ALLOCATE_ECP_FLAGS
_In_opt_
PFSRTL_EXTRA_CREATE_PARAMETER_CLEANUP_CALLBACK
_Inout_ PVOID 
LookasideList
 
_In_ PECP_LIST _In_ LPCGUID
_Outptr_opt_ PVOID _Out_opt_
ULONG
EcpContextSize
 
_In_ PECP_LIST _In_opt_ PVOID CurrentEcpContext
 
_In_ PECP_LIST _In_opt_ PVOID
_Out_opt_ LPGUID 
NextEcpType
 
_In_ PECP_LIST _In_opt_ PVOID
_Out_opt_ LPGUID _Outptr_opt_
PVOID
NextEcpContext
 
_In_ PECP_LIST _In_opt_ PVOID
_Out_opt_ LPGUID _Outptr_opt_
PVOID _Out_opt_ ULONG
NextEcpContextSize
 
_In_opt_ PFILE_OBJECT _In_opt_
PETHREAD 
Thread
 
_In_opt_ PFILE_OBJECT _In_opt_
PETHREAD _Inout_
PIO_PRIORITY_INFO 
PriorityInfo
 
_Out_opt_ PIO_PRIORITY_INFO OutputPriorityInfo
 
_In_ IO_PRIORITY_HINT PriorityHint
 
_Must_inspect_result_ _Out_ PULONG SessionId
 
_In_ PFLT_INSTANCE TargetInstance
 
_In_ PFLT_INSTANCE _Out_opt_
PBOOLEAN 
SourceDeviceStackSizeModified
 
_In_ PFLT_INSTANCE _Out_ PBOOLEAN RedirectionAllowed
 
_In_ PFLT_INSTANCE _Out_ PBOOLEAN RedirectionAllowedThisIo
 
_In_ PFLT_INSTANCE _Out_
PBOOLEAN _Out_opt_ PBOOLEAN 
RedirectionAllowedAllIo
 

Macro Definition Documentation

#define __FLTKERNEL__

Definition at line 23 of file fltkernel.h.

#define Add2Ptr (   P,
  I 
)    ((PVOID)((PUCHAR)(P) + (I)))

Definition at line 56 of file fltkernel.h.

#define FLT_ALL_CONTEXTS
Value:
#define FLT_TRANSACTION_CONTEXT
Definition: fltkernel.h:443
#define FLT_STREAM_CONTEXT
Definition: fltkernel.h:441
#define FLT_INSTANCE_CONTEXT
Definition: fltkernel.h:439
#define FLT_FILE_CONTEXT
Definition: fltkernel.h:440
#define FLT_VOLUME_CONTEXT
Definition: fltkernel.h:438
#define FLT_STREAMHANDLE_CONTEXT
Definition: fltkernel.h:442

Definition at line 446 of file fltkernel.h.

#define FLT_ALLOCATE_CALLBACK_DATA_PREALLOCATE_ALL_MEMORY   0x00000001

Definition at line 454 of file fltkernel.h.

#define FLT_ASSERTMSG (   _m,
  _e 
)    NT_ASSERTMSG(_m, _e)

Definition at line 50 of file fltkernel.h.

#define FLT_CLEAR_CALLBACK_DATA_DIRTY (   Data)    FltClearCallbackDataDirty(Data)

Definition at line 427 of file fltkernel.h.

#define FLT_CONTEXT_END   0xffff

Definition at line 444 of file fltkernel.h.

#define FLT_FILE_CONTEXT   0x0004

Definition at line 440 of file fltkernel.h.

Referenced by IsContextTypeValid().

#define FLT_FILE_NAME_ALLOW_QUERY_ON_REPARSE   0x04000000

Definition at line 795 of file fltkernel.h.

#define FLT_FILE_NAME_DO_NOT_CACHE   0x02000000

Definition at line 792 of file fltkernel.h.

#define FLT_FILE_NAME_NORMALIZED   0x01

Definition at line 774 of file fltkernel.h.

#define FLT_FILE_NAME_OPENED   0x02

Definition at line 775 of file fltkernel.h.

#define FLT_FILE_NAME_QUERY_ALWAYS_ALLOW_CACHE_LOOKUP   0x0400

Definition at line 785 of file fltkernel.h.

#define FLT_FILE_NAME_QUERY_CACHE_ONLY   0x0200

Definition at line 783 of file fltkernel.h.

#define FLT_FILE_NAME_QUERY_DEFAULT   0x0100

Definition at line 782 of file fltkernel.h.

#define FLT_FILE_NAME_QUERY_FILESYSTEM_ONLY   0x0300

Definition at line 784 of file fltkernel.h.

#define FLT_FILE_NAME_REQUEST_FROM_CURRENT_PROVIDER   0x01000000

Definition at line 791 of file fltkernel.h.

#define FLT_FILE_NAME_SHORT   0x03

Definition at line 776 of file fltkernel.h.

#define FLT_INSTANCE_CONTEXT   0x0002

Definition at line 439 of file fltkernel.h.

Referenced by IsContextTypeValid().

#define FLT_INTERNAL_OPERATION_COUNT   22

Definition at line 80 of file fltkernel.h.

#define FLT_IS_CALLBACK_DATA_DIRTY (   Data)    FltIsCallbackDataDirty(Data)

Definition at line 428 of file fltkernel.h.

#define FLT_IS_FASTIO_OPERATION (   Data)    (FlagOn((Data)->Flags, FLTFL_CALLBACK_DATA_FAST_IO_OPERATION))

Definition at line 431 of file fltkernel.h.

#define FLT_IS_FS_FILTER_OPERATION (   Data)    (FlagOn((Data)->Flags, FLTFL_CALLBACK_DATA_FS_FILTER_OPERATION))

Definition at line 432 of file fltkernel.h.

#define FLT_IS_IRP_OPERATION (   Data)    (FlagOn((Data)->Flags, FLTFL_CALLBACK_DATA_IRP_OPERATION))

Definition at line 430 of file fltkernel.h.

#define FLT_IS_REISSUED_IO (   Data)    (FlagOn((Data)->Flags, FLTFL_CALLBACK_DATA_REISSUED_IO))

Definition at line 433 of file fltkernel.h.

#define FLT_IS_SYSTEM_BUFFER (   Data)    (FlagOn((Data)->Flags, FLTFL_CALLBACK_DATA_SYSTEM_BUFFER))

Definition at line 434 of file fltkernel.h.

#define FLT_MAX_TRANSACTION_NOTIFICATIONS
Value:
#define TRANSACTION_NOTIFY_COMMIT
Definition: ktmtypes.h:50
#define TRANSACTION_NOTIFY_PREPARE
Definition: ktmtypes.h:49
#define TRANSACTION_NOTIFY_PREPREPARE
Definition: ktmtypes.h:48
#define TRANSACTION_NOTIFY_ROLLBACK
Definition: ktmtypes.h:51
#define TRANSACTION_NOTIFY_COMMIT_FINALIZE
Definition: ktmtypes.h:74

Definition at line 537 of file fltkernel.h.

#define FLT_MGR_AFTER_XPSP2
Value:
#define SPVER(Version)
Definition: sdkddkver.h:124
#define NTDDI_VERSION
Definition: fltmc.cpp:10
#define NTDDI_WS03
Definition: sdkddkver.h:91
#define NTDDI_WINXP
Definition: sdkddkver.h:86
#define OSVER(Version)
Definition: sdkddkver.h:123
#define NTDDI_WIN2KSP4
Definition: sdkddkver.h:85
#define NTDDI_VISTA
Definition: sdkddkver.h:102
#define NTDDI_WINXPSP2
Definition: sdkddkver.h:88
#define NTDDI_WS03SP1
Definition: sdkddkver.h:92
#define NTDDI_WIN2K
Definition: ndr_marshall.c:22

Definition at line 34 of file fltkernel.h.

#define FLT_MGR_BASELINE
Value:
#define SPVER(Version)
Definition: sdkddkver.h:124
#define NTDDI_VERSION
Definition: fltmc.cpp:10
#define NTDDI_WS03
Definition: sdkddkver.h:91
#define NTDDI_WINXP
Definition: sdkddkver.h:86
#define OSVER(Version)
Definition: sdkddkver.h:123
#define NTDDI_WIN2KSP4
Definition: sdkddkver.h:85
#define NTDDI_VISTA
Definition: sdkddkver.h:102
#define NTDDI_WINXPSP2
Definition: sdkddkver.h:88
#define NTDDI_WS03SP1
Definition: sdkddkver.h:92
#define NTDDI_WIN2K
Definition: ndr_marshall.c:22

Definition at line 29 of file fltkernel.h.

#define FLT_MGR_LONGHORN   (NTDDI_VERSION >= NTDDI_VISTA)

Definition at line 39 of file fltkernel.h.

#define FLT_MGR_WIN7   (NTDDI_VERSION >= NTDDI_WIN7)

Definition at line 40 of file fltkernel.h.

#define FLT_PORT_ALL_ACCESS   (FLT_PORT_CONNECT | STANDARD_RIGHTS_ALL)

Definition at line 836 of file fltkernel.h.

#define FLT_PORT_CONNECT   0x0001

Definition at line 835 of file fltkernel.h.

#define FLT_REGISTRATION_VERSION   FLT_REGISTRATION_VERSION_0202

Definition at line 718 of file fltkernel.h.

#define FLT_REGISTRATION_VERSION_0200   0x0200

Definition at line 712 of file fltkernel.h.

#define FLT_REGISTRATION_VERSION_0201   0x0201

Definition at line 713 of file fltkernel.h.

#define FLT_REGISTRATION_VERSION_0202   0x0202

Definition at line 714 of file fltkernel.h.

#define FLT_REGISTRATION_VERSION_0203   0x0203

Definition at line 715 of file fltkernel.h.

#define FLT_SET_CALLBACK_DATA_DIRTY (   Data)    FltSetCallbackDataDirty(Data)

Definition at line 426 of file fltkernel.h.

#define FLT_STREAM_CONTEXT   0x0008

Definition at line 441 of file fltkernel.h.

Referenced by IsContextTypeValid().

#define FLT_STREAMHANDLE_CONTEXT   0x0010

Definition at line 442 of file fltkernel.h.

Referenced by IsContextTypeValid().

#define FLT_TAG_DATA_BUFFER_HEADER_SIZE   FIELD_OFFSET(FLT_TAG_DATA_BUFFER, GenericReparseBuffer)

Definition at line 647 of file fltkernel.h.

#define FLT_TRANSACTION_CONTEXT   0x0020

Definition at line 443 of file fltkernel.h.

Referenced by IsContextTypeValid().

#define FLT_VALID_FILE_NAME_FLAGS   0xff000000

Definition at line 789 of file fltkernel.h.

#define FLT_VALID_FILE_NAME_FORMATS   0x000000ff

Definition at line 772 of file fltkernel.h.

#define FLT_VALID_FILE_NAME_QUERY_METHODS   0x0000ff00

Definition at line 780 of file fltkernel.h.

#define FLT_VARIABLE_SIZED_CONTEXTS   ((SIZE_T)-1)

Definition at line 513 of file fltkernel.h.

#define FLT_VOLUME_CONTEXT   0x0001

Definition at line 438 of file fltkernel.h.

Referenced by IsContextTypeValid().

#define FLTFL_CALLBACK_DATA_DIRTY   0x80000000

Definition at line 424 of file fltkernel.h.

#define FLTFL_CALLBACK_DATA_DRAINING_IO   0x00040000

Definition at line 421 of file fltkernel.h.

#define FLTFL_CALLBACK_DATA_FAST_IO_OPERATION   0x00000002

Definition at line 416 of file fltkernel.h.

#define FLTFL_CALLBACK_DATA_FS_FILTER_OPERATION   0x00000004

Definition at line 417 of file fltkernel.h.

#define FLTFL_CALLBACK_DATA_GENERATED_IO   0x00010000

Definition at line 419 of file fltkernel.h.

#define FLTFL_CALLBACK_DATA_IRP_OPERATION   0x00000001

Definition at line 415 of file fltkernel.h.

#define FLTFL_CALLBACK_DATA_NEW_SYSTEM_BUFFER   0x00100000

Definition at line 423 of file fltkernel.h.

#define FLTFL_CALLBACK_DATA_POST_OPERATION   0x00080000

Definition at line 422 of file fltkernel.h.

#define FLTFL_CALLBACK_DATA_REISSUE_MASK   0x0000FFFF

Definition at line 414 of file fltkernel.h.

#define FLTFL_CALLBACK_DATA_REISSUED_IO   0x00020000

Definition at line 420 of file fltkernel.h.

#define FLTFL_CALLBACK_DATA_SYSTEM_BUFFER   0x00000008

Definition at line 418 of file fltkernel.h.

#define FLTFL_CONTEXT_REGISTRATION_NO_EXACT_SIZE_MATCH   0x0001

Definition at line 511 of file fltkernel.h.

#define FLTFL_FILE_NAME_PARSED_EXTENSION   0x0002

Definition at line 801 of file fltkernel.h.

#define FLTFL_FILE_NAME_PARSED_FINAL_COMPONENT   0x0001

Definition at line 800 of file fltkernel.h.

#define FLTFL_FILE_NAME_PARSED_PARENT_DIR   0x0008

Definition at line 803 of file fltkernel.h.

#define FLTFL_FILE_NAME_PARSED_STREAM   0x0004

Definition at line 802 of file fltkernel.h.

#define FLTFL_FILTER_UNLOAD_MANDATORY   0x00000001

Definition at line 651 of file fltkernel.h.

#define FLTFL_INSTANCE_SETUP_AUTOMATIC_ATTACHMENT   0x00000001

Definition at line 529 of file fltkernel.h.

#define FLTFL_INSTANCE_SETUP_DETACHED_VOLUME   0x00000008

Definition at line 535 of file fltkernel.h.

#define FLTFL_INSTANCE_SETUP_MANUAL_ATTACHMENT   0x00000002

Definition at line 530 of file fltkernel.h.

#define FLTFL_INSTANCE_SETUP_NEWLY_MOUNTED_VOLUME   0x00000004

Definition at line 531 of file fltkernel.h.

#define FLTFL_INSTANCE_TEARDOWN_FILTER_UNLOAD   0x00000002

Definition at line 562 of file fltkernel.h.

#define FLTFL_INSTANCE_TEARDOWN_INTERNAL_ERROR   0x00000010

Definition at line 565 of file fltkernel.h.

#define FLTFL_INSTANCE_TEARDOWN_MANDATORY_FILTER_UNLOAD   0x00000004

Definition at line 563 of file fltkernel.h.

#define FLTFL_INSTANCE_TEARDOWN_MANUAL   0x00000001

Definition at line 561 of file fltkernel.h.

#define FLTFL_INSTANCE_TEARDOWN_VOLUME_DISMOUNT   0x00000008

Definition at line 564 of file fltkernel.h.

#define FLTFL_IO_OPERATION_DO_NOT_UPDATE_BYTE_OFFSET   0x00000004

Definition at line 757 of file fltkernel.h.

#define FLTFL_IO_OPERATION_NON_CACHED   0x00000001

Definition at line 755 of file fltkernel.h.

#define FLTFL_IO_OPERATION_PAGING   0x00000002

Definition at line 756 of file fltkernel.h.

#define FLTFL_IO_OPERATION_SYNCHRONOUS_PAGING   0x00000008

Definition at line 760 of file fltkernel.h.

#define FLTFL_NORMALIZE_NAME_CASE_SENSITIVE   0x01

Definition at line 674 of file fltkernel.h.

#define FLTFL_NORMALIZE_NAME_DESTINATION_FILE_NAME   0x02

Definition at line 675 of file fltkernel.h.

#define FLTFL_OPERATION_REGISTRATION_SKIP_CACHED_IO   0x00000002

Definition at line 606 of file fltkernel.h.

#define FLTFL_OPERATION_REGISTRATION_SKIP_NON_DASD_IO   0x00000004

Definition at line 607 of file fltkernel.h.

#define FLTFL_OPERATION_REGISTRATION_SKIP_PAGING_IO   0x00000001

Definition at line 605 of file fltkernel.h.

#define FLTFL_POST_OPERATION_DRAINING   0x00000001

Definition at line 594 of file fltkernel.h.

#define FLTFL_REGISTRATION_DO_NOT_SUPPORT_SERVICE_STOP   0x00000001

Definition at line 725 of file fltkernel.h.

#define FLTFL_REGISTRATION_SUPPORT_NPFS_MSFS   0x00000002

Definition at line 726 of file fltkernel.h.

#define FltGetFileNameFormat (   _NameOptions)    ((_NameOptions) & FLT_VALID_FILE_NAME_FORMATS)

Definition at line 778 of file fltkernel.h.

#define FltGetFileNameQueryMethod (   _NameOptions)    ((_NameOptions) & FLT_VALID_FILE_NAME_QUERY_METHODS)

Definition at line 787 of file fltkernel.h.

#define IRP_MJ_ACQUIRE_FOR_CC_FLUSH   ((UCHAR)-5)

Definition at line 69 of file fltkernel.h.

#define IRP_MJ_ACQUIRE_FOR_MOD_WRITE   ((UCHAR)-3)

Definition at line 67 of file fltkernel.h.

#define IRP_MJ_ACQUIRE_FOR_SECTION_SYNCHRONIZATION   ((UCHAR)-1)

Definition at line 65 of file fltkernel.h.

#define IRP_MJ_FAST_IO_CHECK_IF_POSSIBLE   ((UCHAR)-13)

Definition at line 71 of file fltkernel.h.

#define IRP_MJ_MDL_READ   ((UCHAR)-15)

Definition at line 73 of file fltkernel.h.

#define IRP_MJ_MDL_READ_COMPLETE   ((UCHAR)-16)

Definition at line 74 of file fltkernel.h.

#define IRP_MJ_MDL_WRITE_COMPLETE   ((UCHAR)-18)

Definition at line 76 of file fltkernel.h.

#define IRP_MJ_NETWORK_QUERY_OPEN   ((UCHAR)-14)

Definition at line 72 of file fltkernel.h.

#define IRP_MJ_OPERATION_END   ((UCHAR)0x80)

Definition at line 79 of file fltkernel.h.

Referenced by FltRegisterFilter().

#define IRP_MJ_PREPARE_MDL_WRITE   ((UCHAR)-17)

Definition at line 75 of file fltkernel.h.

#define IRP_MJ_RELEASE_FOR_CC_FLUSH   ((UCHAR)-6)

Definition at line 70 of file fltkernel.h.

#define IRP_MJ_RELEASE_FOR_MOD_WRITE   ((UCHAR)-4)

Definition at line 68 of file fltkernel.h.

#define IRP_MJ_RELEASE_FOR_SECTION_SYNCHRONIZATION   ((UCHAR)-2)

Definition at line 66 of file fltkernel.h.

#define IRP_MJ_VOLUME_DISMOUNT   ((UCHAR)-20)

Definition at line 78 of file fltkernel.h.

#define IRP_MJ_VOLUME_MOUNT   ((UCHAR)-19)

Definition at line 77 of file fltkernel.h.

Referenced by FltRegisterFilter().

#define IS_ALIGNED (   _pointer,
  _alignment 
)    ((((ULONG_PTR) (_pointer)) & ((_alignment) - 1)) == 0)

Definition at line 62 of file fltkernel.h.

#define NULL_CONTEXT   ((PFLT_CONTEXT)NULL)

Definition at line 82 of file fltkernel.h.

#define PtrOffset (   B,
  O 
)    ((ULONG)((ULONG_PTR)(O) - (ULONG_PTR)(B)))

Definition at line 57 of file fltkernel.h.

#define ROUND_TO_SIZE (   _length,
  _alignment 
)    ((((ULONG_PTR)(_length)) + ((_alignment)-1)) & ~(ULONG_PTR) ((_alignment) - 1))

Definition at line 59 of file fltkernel.h.

Typedef Documentation

Definition at line 453 of file fltkernel.h.

Definition at line 450 of file fltkernel.h.

Definition at line 914 of file fltkernel.h.

Definition at line 509 of file fltkernel.h.

Definition at line 436 of file fltkernel.h.

Definition at line 661 of file fltkernel.h.

Definition at line 798 of file fltkernel.h.

Definition at line 649 of file fltkernel.h.

Definition at line 552 of file fltkernel.h.

Definition at line 527 of file fltkernel.h.

Definition at line 559 of file fltkernel.h.

Definition at line 753 of file fltkernel.h.

Definition at line 672 of file fltkernel.h.

Definition at line 603 of file fltkernel.h.

Definition at line 592 of file fltkernel.h.

Definition at line 723 of file fltkernel.h.

Definition at line 482 of file fltkernel.h.

typedef VOID(FLTAPI * PFLT_CALLBACK_DATA_QUEUE_ACQUIRE)(_Inout_ PFLT_CALLBACK_DATA_QUEUE Cbdq, _Out_opt_ PKIRQL Irql)

Definition at line 900 of file fltkernel.h.

typedef VOID(FLTAPI * PFLT_CALLBACK_DATA_QUEUE_COMPLETE_CANCELED_IO)(_Inout_ PFLT_CALLBACK_DATA_QUEUE Cbdq, _Inout_ PFLT_CALLBACK_DATA Cbd)

Definition at line 910 of file fltkernel.h.

typedef NTSTATUS(FLTAPI * PFLT_CALLBACK_DATA_QUEUE_INSERT_IO)(_Inout_ PFLT_CALLBACK_DATA_QUEUE Cbdq, _In_ PFLT_CALLBACK_DATA Cbd, _In_opt_ PVOID InsertContext)

Definition at line 883 of file fltkernel.h.

typedef PFLT_CALLBACK_DATA(FLTAPI * PFLT_CALLBACK_DATA_QUEUE_PEEK_NEXT_IO)(_In_ PFLT_CALLBACK_DATA_QUEUE Cbdq, _In_opt_ PFLT_CALLBACK_DATA Cbd, _In_opt_ PVOID PeekContext)

Definition at line 894 of file fltkernel.h.

typedef VOID(FLTAPI * PFLT_CALLBACK_DATA_QUEUE_RELEASE)(_Inout_ PFLT_CALLBACK_DATA_QUEUE Cbdq, _In_opt_ KIRQL Irql)

Definition at line 905 of file fltkernel.h.

typedef VOID(FLTAPI * PFLT_CALLBACK_DATA_QUEUE_REMOVE_IO)(_Inout_ PFLT_CALLBACK_DATA_QUEUE Cbdq, _In_ PFLT_CALLBACK_DATA Cbd)

Definition at line 889 of file fltkernel.h.

typedef VOID(FLTAPI * PFLT_COMPLETE_CANCELED_CALLBACK)(_In_ PFLT_CALLBACK_DATA CallbackData)

Definition at line 860 of file fltkernel.h.

typedef NTSTATUS(* PFLT_COMPLETE_LOCK_CALLBACK_DATA_ROUTINE)(_In_opt_ PVOID Context, _In_ PFLT_CALLBACK_DATA CallbackData)

Definition at line 929 of file fltkernel.h.

typedef VOID(FLTAPI * PFLT_COMPLETED_ASYNC_IO_CALLBACK)(_In_ PFLT_CALLBACK_DATA CallbackData, _In_ PFLT_CONTEXT Context)

Definition at line 749 of file fltkernel.h.

typedef NTSTATUS(FLTAPI * PFLT_CONNECT_NOTIFY)(_In_ PFLT_PORT ClientPort, _In_opt_ PVOID ServerPortCookie, _In_reads_bytes_opt_(SizeOfContext) PVOID ConnectionContext, _In_ ULONG SizeOfContext, _Outptr_result_maybenull_ PVOID *ConnectionPortCookie)

Definition at line 848 of file fltkernel.h.

Definition at line 89 of file fltkernel.h.

typedef PVOID(FLTAPI * PFLT_CONTEXT_ALLOCATE_CALLBACK)(_In_ POOL_TYPE PoolType, _In_ SIZE_T Size, _In_ FLT_CONTEXT_TYPE ContextType)

Definition at line 499 of file fltkernel.h.

typedef VOID(FLTAPI * PFLT_CONTEXT_CLEANUP_CALLBACK)(_In_ PFLT_CONTEXT Context, _In_ FLT_CONTEXT_TYPE ContextType)

Definition at line 494 of file fltkernel.h.

typedef VOID(FLTAPI * PFLT_CONTEXT_FREE_CALLBACK)(_In_ PVOID Pool, _In_ FLT_CONTEXT_TYPE ContextType)

Definition at line 505 of file fltkernel.h.

typedef struct _FLT_DEFERRED_IO_WORKITEM* PFLT_DEFERRED_IO_WORKITEM

Definition at line 863 of file fltkernel.h.

typedef VOID(FLTAPI * PFLT_DEFERRED_IO_WORKITEM_ROUTINE)(_In_ PFLT_DEFERRED_IO_WORKITEM FltWorkItem, _In_ PFLT_CALLBACK_DATA CallbackData, _In_opt_ PVOID Context)

Definition at line 867 of file fltkernel.h.

typedef VOID(FLTAPI * PFLT_DISCONNECT_NOTIFY)(_In_opt_ PVOID ConnectionCookie)

Definition at line 856 of file fltkernel.h.

typedef struct _FLT_FILTER* PFLT_FILTER

Definition at line 84 of file fltkernel.h.

typedef NTSTATUS(FLTAPI * PFLT_FILTER_UNLOAD_CALLBACK)(FLT_FILTER_UNLOAD_FLAGS Flags)

Definition at line 654 of file fltkernel.h.

typedef struct _FLT_GENERIC_WORKITEM* PFLT_GENERIC_WORKITEM

Definition at line 864 of file fltkernel.h.

typedef VOID(FLTAPI * PFLT_GENERIC_WORKITEM_ROUTINE)(_In_ PFLT_GENERIC_WORKITEM FltWorkItem, _In_ PVOID FltObject, _In_opt_ PVOID Context)

Definition at line 873 of file fltkernel.h.

typedef VOID(FLTAPI * PFLT_GET_OPERATION_STATUS_CALLBACK)(_In_ PCFLT_RELATED_OBJECTS FltObjects, _In_ PFLT_IO_PARAMETER_BLOCK IopbSnapshot, _In_ NTSTATUS OperationStatus, _In_opt_ PVOID RequesterContext)

Definition at line 764 of file fltkernel.h.

typedef struct _FLT_INSTANCE* PFLT_INSTANCE

Definition at line 86 of file fltkernel.h.

typedef NTSTATUS(FLTAPI * PFLT_INSTANCE_QUERY_TEARDOWN_CALLBACK)(_In_ PCFLT_RELATED_OBJECTS FltObjects, _In_ FLT_INSTANCE_QUERY_TEARDOWN_FLAGS Flags)

Definition at line 555 of file fltkernel.h.

typedef NTSTATUS(FLTAPI * PFLT_INSTANCE_SETUP_CALLBACK)(_In_ PCFLT_RELATED_OBJECTS FltObjects, _In_ FLT_INSTANCE_SETUP_FLAGS Flags, _In_ DEVICE_TYPE VolumeDeviceType, _In_ FLT_FILESYSTEM_TYPE VolumeFilesystemType)

Definition at line 546 of file fltkernel.h.

typedef VOID(FLTAPI * PFLT_INSTANCE_TEARDOWN_CALLBACK)(_In_ PCFLT_RELATED_OBJECTS FltObjects, _In_ FLT_INSTANCE_TEARDOWN_FLAGS Reason)

Definition at line 568 of file fltkernel.h.

Definition at line 839 of file fltkernel.h.

typedef VOID(FLTAPI * PFLT_NORMALIZE_CONTEXT_CLEANUP)(_In_opt_ PVOID *NormalizationContext)

Definition at line 701 of file fltkernel.h.

typedef NTSTATUS(FLTAPI * PFLT_NORMALIZE_NAME_COMPONENT)(_In_ PFLT_INSTANCE Instance, _In_ PCUNICODE_STRING ParentDirectory, _In_ USHORT VolumeNameLength, _In_ PCUNICODE_STRING Component, _Out_writes_bytes_(ExpandComponentNameLength) PFILE_NAMES_INFORMATION ExpandComponentName, _In_ ULONG ExpandComponentNameLength, _In_ FLT_NORMALIZE_NAME_FLAGS Flags, _Inout_ PVOID *NormalizationContext)

Definition at line 678 of file fltkernel.h.

typedef NTSTATUS(FLTAPI * PFLT_NORMALIZE_NAME_COMPONENT_EX)(_In_ PFLT_INSTANCE Instance, _In_ PFILE_OBJECT FileObject, _In_ PCUNICODE_STRING ParentDirectory, _In_ USHORT VolumeNameLength, _In_ PCUNICODE_STRING Component, _Out_writes_bytes_(ExpandComponentNameLength) PFILE_NAMES_INFORMATION ExpandComponentName, _In_ ULONG ExpandComponentNameLength, _In_ FLT_NORMALIZE_NAME_FLAGS Flags, _Inout_ PVOID *NormalizationContext)

Definition at line 689 of file fltkernel.h.

typedef struct _FLT_PORT* PFLT_PORT

Definition at line 87 of file fltkernel.h.

Definition at line 597 of file fltkernel.h.

Definition at line 582 of file fltkernel.h.

typedef NTSTATUS(FLTAPI * PFLT_TRANSACTION_NOTIFICATION_CALLBACK)(_In_ PCFLT_RELATED_OBJECTS FltObjects, _In_ PFLT_CONTEXT TransactionContext, _In_ ULONG NotificationMask)

Definition at line 706 of file fltkernel.h.

typedef struct _FLT_VOLUME* PFLT_VOLUME

Definition at line 85 of file fltkernel.h.

typedef VOID(FLTAPI * PFLTOPLOCK_PREPOST_CALLBACKDATA_ROUTINE)(_In_ PFLT_CALLBACK_DATA CallbackData, _In_opt_ PVOID Context)

Definition at line 939 of file fltkernel.h.

typedef VOID(FLTAPI * PFLTOPLOCK_WAIT_COMPLETE_ROUTINE)(_In_ PFLT_CALLBACK_DATA CallbackData, _In_opt_ PVOID Context)

Definition at line 934 of file fltkernel.h.

Enumeration Type Documentation

Enumerator
FLT_POSTOP_FINISHED_PROCESSING 
FLT_POSTOP_MORE_PROCESSING_REQUIRED 

Definition at line 587 of file fltkernel.h.

587  {
enum _FLT_POSTOP_CALLBACK_STATUS FLT_POSTOP_CALLBACK_STATUS
enum _FLT_POSTOP_CALLBACK_STATUS * PFLT_POSTOP_CALLBACK_STATUS
Enumerator
FLT_PREOP_SUCCESS_WITH_CALLBACK 
FLT_PREOP_SUCCESS_NO_CALLBACK 
FLT_PREOP_PENDING 
FLT_PREOP_DISALLOW_FASTIO 
FLT_PREOP_COMPLETE 
FLT_PREOP_SYNCHRONIZE 

Definition at line 572 of file fltkernel.h.

Enumerator
FLT_SET_CONTEXT_REPLACE_IF_EXISTS 
FLT_SET_CONTEXT_KEEP_IF_EXISTS 

Definition at line 818 of file fltkernel.h.

818  {
enum _FLT_SET_CONTEXT_OPERATION * PFLT_SET_CONTEXT_OPERATION
enum _FLT_SET_CONTEXT_OPERATION FLT_SET_CONTEXT_OPERATION

Function Documentation

_Acquires_lock_ ( _Global_critical_region_  )

Definition at line 84 of file semaphor.c.

91 {
92  PTHREADINFO pti;
93 
94  ASSERT(hsem);
97  if (pti) ++pti->dwEngAcquireCount;
98 }
PVOID NTAPI PsGetThreadWin32Thread(IN PETHREAD Thread)
Definition: thread.c:795
#define PsGetCurrentThread()
Definition: env_spec_w32.h:81
ASSERT((InvokeOnSuccess||InvokeOnError||InvokeOnCancel)?(CompletionRoutine!=NULL):TRUE)
PVOID NTAPI ExEnterCriticalRegionAndAcquireResourceShared(IN PERESOURCE Resource)
Definition: resource.c:2218
ERESOURCE * PERESOURCE
Definition: env_spec_w32.h:595
_Must_inspect_result_ _IRQL_requires_max_ ( APC_LEVEL  )
_IRQL_requires_max_ ( DISPATCH_LEVEL  )

Definition at line 30 of file rmap.c.

36 {
38 }
#define TAG_RMAP
Definition: tag.h:133
#define ExFreePoolWithTag(_P, _T)
Definition: module.h:1097
#define P(a, b, c, d, e, x)
_Must_inspect_result_ _IRQL_requires_max_ ( PASSIVE_LEVEL  )

Definition at line 401 of file event.c.

414 {
415  return KspEnableEvent(Irp, EventSetsCount, EventSet, EventsList, EventsFlags, EventsLock, Allocator, EventItemSize);
416 }
_In_ PIRP Irp
Definition: csq.h:116
NTSTATUS KspEnableEvent(IN PIRP Irp, IN ULONG EventSetsCount, IN const KSEVENT_SET *EventSet, IN OUT PLIST_ENTRY EventsList OPTIONAL, IN KSEVENTS_LOCKTYPE EventsFlags OPTIONAL, IN PVOID EventsLock OPTIONAL, IN PFNKSALLOCATOR Allocator OPTIONAL, IN ULONG EventItemSize OPTIONAL)
Definition: event.c:87
_Must_inspect_result_ _IRQL_requires_max_ ( DPC_LEVEL  )
_Must_inspect_result_ _In_ PFILE_OBJECT _Out_writes_bytes_to_ ( Length  ,
BytesRead 
)
_Must_inspect_result_ _In_ PFILE_OBJECT _In_ ULONG _In_ ULONG _Out_writes_bytes_to_opt_ ( OutputBufferLength  ,
LengthReturned 
)
_In_ FILTER_VOLUME_INFORMATION_CLASS _Out_writes_bytes_to_opt_ ( BufferSize  ,
BytesReturned 
)
_Out_writes_bytes_to_opt_ ( VolumePropertiesLength  ,
LengthReturned 
)
_Must_inspect_result_ _Out_writes_to_opt_ ( VolumeListSize  ,
NumberVolumesReturned 
)
_Must_inspect_result_ _In_opt_ PFLT_FILTER _Out_writes_to_opt_ ( InstanceListSize  ,
NumberInstancesReturned 
)
_Releases_lock_ ( _Global_critical_region_  )

Definition at line 63 of file semaphor.c.

68 {
69  // www.osr.com/ddk/graphics/gdifncs_5u3r.htm
70  PTHREADINFO W32Thread;
71 
72  /* On Windows a NULL hsem is ignored */
73  if (hsem == NULL)
74  {
75  DPRINT1("EngReleaseSemaphore called with hsem == NULL!\n");
76  return;
77  }
78 
80  if (W32Thread) --W32Thread->dwEngAcquireCount;
82 }
PVOID NTAPI PsGetThreadWin32Thread(IN PETHREAD Thread)
Definition: thread.c:795
#define PsGetCurrentThread()
Definition: env_spec_w32.h:81
ERESOURCE * PERESOURCE
Definition: env_spec_w32.h:595
smooth NULL
Definition: ftsmooth.c:464
VOID FASTCALL ExReleaseResourceAndLeaveCriticalRegion(IN PERESOURCE Resource)
Definition: resource.c:2278
#define DPRINT1
Definition: precomp.h:8
_When_ ( (PoolType==NonPagedPoolNx)  ,
_IRQL_requires_max_(DISPATCH_LEVEL  
)
_When_ ( FlagOn(CallbackData->Iopb->IrpFlags, IRP_PAGING_IO ,
_IRQL_requires_max_(APC_LEVEL  
) -> Iopb->IrpFlags, IRP_PAGING_IO), _IRQL_requires_max_(PASSIVE_LEVEL)) VOID FLTAPI FltPerformSynchronousIo(_Inout_ PFLT_CALLBACK_DATA CallbackData)
VOID FLTAPI FltCbdqDisable ( _Inout_ PFLT_CALLBACK_DATA_QUEUE  Cbdq)
VOID FLTAPI FltCbdqEnable ( _Inout_ PFLT_CALLBACK_DATA_QUEUE  Cbdq)
_Must_inspect_result_ PFLT_CALLBACK_DATA FLTAPI FltCbdqRemoveNextIo ( _Inout_ PFLT_CALLBACK_DATA_QUEUE  Cbdq,
_In_opt_ PVOID  PeekContext 
)
VOID FLTAPI FltClearCallbackDataDirty ( _Inout_ PFLT_CALLBACK_DATA  Data)
LONG FLTAPI FltCompareInstanceAltitudes ( _In_ PFLT_INSTANCE  Instance1,
_In_ PFLT_INSTANCE  Instance2 
)
NTSTATUS FLTAPI FltDecodeParameters ( _In_ PFLT_CALLBACK_DATA  CallbackData,
_Outptr_opt_ PMDL **  MdlAddressPointer,
_Outptr_opt_result_bytebuffer_ **Length PVOID **  Buffer,
_Outptr_opt_ PULONG Length,
_Out_opt_ LOCK_OPERATION DesiredAccess 
)
_Must_inspect_result_ BOOLEAN FLTAPI FltDoCompletionProcessingWhenSafe ( _In_ PFLT_CALLBACK_DATA  Data,
_In_ PCFLT_RELATED_OBJECTS  FltObjects,
_In_opt_ PVOID  CompletionContext,
_In_ FLT_POST_OPERATION_FLAGS  Flags,
_In_ PFLT_POST_OPERATION_CALLBACK  SafePostCallback,
_Out_ PFLT_POSTOP_CALLBACK_STATUS  RetPostOperationStatus 
)
PCHAR FLTAPI FltGetIrpName ( _In_ UCHAR  IrpMajorCode)
PMDL FASTCALL FltGetSwappedBufferMdlAddress ( _In_ PFLT_CALLBACK_DATA  CallbackData)
VOID FLTAPI FltInitializeFileLock ( _Out_ PFILE_LOCK  FileLock)
BOOLEAN FLTAPI FltIsCallbackDataDirty ( _In_ PFLT_CALLBACK_DATA  Data)
BOOLEAN FLTAPI FltIsIoCanceled ( _In_ PFLT_CALLBACK_DATA  CallbackData)
BOOLEAN FLTAPI FltIsOperationSynchronous ( _In_ PFLT_CALLBACK_DATA  CallbackData)
BOOLEAN FLTAPI FltOplockKeysEqual ( _In_opt_ PFILE_OBJECT  Fo1,
_In_opt_ PFILE_OBJECT  Fo2 
)
VOID FASTCALL FltRetainSwappedBufferMdlAddress ( _In_ PFLT_CALLBACK_DATA  CallbackData)
VOID FLTAPI FltSetCallbackDataDirty ( _Inout_ PFLT_CALLBACK_DATA  Data)
VOID FLTAPI FltUninitializeFileLock ( _In_ PFILE_LOCK  FileLock)

Variable Documentation

Definition at line 1172 of file fltkernel.h.

Referenced by PrintFilterInfo().

Definition at line 1053 of file fltkernel.h.

_In_ FILTER_VOLUME_INFORMATION_CLASS _In_ ULONG BufferSize

Definition at line 1716 of file fltkernel.h.

Definition at line 1117 of file fltkernel.h.

Referenced by AcpiRsCreatePciRoutingTable().

_In_ FILTER_VOLUME_INFORMATION_CLASS _In_ ULONG _Out_ PULONG BytesReturned

Definition at line 1716 of file fltkernel.h.

Referenced by CKsProxy::AdvisePeriodic(), CKsProxy::AdviseTime(), AudioPositionPropertyHandler(), AuxGetAudio(), AuxSetAudio(), CBDADeviceControl::CheckChanges(), CKsClockForwarder_ThreadStartup(), CBDADeviceControl::CommitChanges(), ComputeCompatibleFormat(), CKsProxy::ConvertTimeFormat(), COutputPin_SetState(), CreatePinCallback(), COutputPin::CreatePinHandle(), CBDADeviceControl::CreateTopology(), DECLARE_INTERFACE_(), CInputPin::Get(), COutputPin::Get(), CKsProxy::Get(), CBDASignalStatistics::get_SampleTime(), CBDASignalStatistics::get_SignalLocked(), CBDASignalStatistics::get_SignalPresent(), CBDASignalStatistics::get_SignalQuality(), CBDASignalStatistics::get_SignalStrength(), CInputPin::GetAllocatorRequirements(), CKsProxy::GetAvailable(), DriveVolume::GetBitmap(), CKsProxy::GetCapabilities(), DriveVolume::GetClusterInfo(), CBDADeviceControl::GetControlNode(), CKsProxy::GetCurrentPosition(), CKsProxy::GetDuration(), GetFilterNodeProperty(), GetFilterPinDataRanges(), CKsProxy::GetMediaSeekingFormats(), CBDADeviceControl::GetNodeDescriptors(), CBDADeviceControl::GetNodeInterfaces(), CBDADeviceControl::GetNodeTypes(), CKsProxy::GetNumberOfPins(), CKsProxy::GetPinCommunication(), CKsProxy::GetPinDataflow(), CBDAPinControl::GetPinID(), GetPinInstanceCount(), CKsProxy::GetPinInstanceCount(), CKsProxy::GetPinName(), CBDAPinControl::GetPinType(), CBDADeviceControl::GetPinTypes(), CKsProxy::GetPreroll(), CKsProxy::GetStopPosition(), CInputPin::GetSupportedSets(), COutputPin::GetSupportedSets(), CKsProxy::GetSupportedSets(), GetSysAudioDeviceCount(), GetSysAudioDevicePnpName(), CKsProxy::GetTime(), CKsProxy::GetTimeFormat(), HandleSysAudioFilterPinProperties(), IKsPin_PinMasterClock(), IKsReferenceClock_fnGetResolution(), IKsReferenceClock_fnGetState(), KmtUserCallbackThread(), CKsInterfaceHandler::KsCompleteIo(), KsGetMultiplePinFactoryItems(), CKsInterfaceHandler::KsProcessMediaSamples(), COutputPin::KsPropagateAcquire(), CInputPin::KsPropagateAcquire(), ListFilters(), CKsProxy::Load(), main(), MMixerAddEvent(), MMixerAddMixerControl(), MMixerGetAudioPinDataRanges(), MMixerGetChannelCountEnhanced(), MMixerGetChannelCountLegacy(), MMixerGetComponentAndTargetType(), MMixerGetFilterPinCount(), MMixerGetFilterTopologyProperty(), MMixerGetPhysicalConnection(), MMixerGetPinDataFlowAndCommunication(), MMixerGetPinInstanceCount(), MMixerGetPinName(), MMixerSetGetControlDetails(), MMixerSetGetMuxControlDetails(), DriveVolume::MoveFileDumb(), CKsProxy::PerformClockProperty(), Pin_fnDeviceIoControl(), ProcessList_Update(), CInputPin::QuerySupported(), COutputPin::QuerySupported(), CKsProxy::QuerySupported(), RemoveDirectoryW(), SendRequest(), CInputPin::Set(), COutputPin::Set(), CKsProxy::Set(), CKsClockForwarder::SetClockState(), SetMixerInputOutputFormat(), CKsProxy::SetPinState(), CKsProxy::SetPositions(), CKsProxy::SetSyncSource(), CKsProxy::SetTimeFormat(), CBDADeviceControl::StartChanges(), SysAudioHandleProperty(), Test_WSAIoctl_GetInterfaceList(), CKsProxy::Unadvise(), WdmAudControlDeviceState(), WdmAudFrameSize(), WdmAudResetStream(), and WriteMidi().

Definition at line 1020 of file fltkernel.h.

Referenced by _NavigateToLeafNode(), AcpiPsNextParseState(), and KeUserModeCallback().

Definition at line 1933 of file fltkernel.h.

Definition at line 1454 of file fltkernel.h.

Definition at line 1444 of file fltkernel.h.

_In_ PECP_LIST _In_opt_ PVOID CurrentEcpContext

Definition at line 2621 of file fltkernel.h.

_In_ FLT_CONTEXT_TYPE DesiredContexts

Definition at line 1454 of file fltkernel.h.

_Outptr_ PDEVICE_OBJECT* DeviceObject

Definition at line 1658 of file fltkernel.h.

_Outptr_ PDEVICE_OBJECT* DiskDeviceObject

Definition at line 1673 of file fltkernel.h.

Definition at line 2520 of file fltkernel.h.

Definition at line 2571 of file fltkernel.h.

Definition at line 2511 of file fltkernel.h.

Definition at line 2520 of file fltkernel.h.

Definition at line 1230 of file fltkernel.h.

Definition at line 1306 of file fltkernel.h.

Definition at line 1062 of file fltkernel.h.

Definition at line 983 of file fltkernel.h.

_Out_ PFLT_FILESYSTEM_TYPE FileSystemType

Definition at line 2408 of file fltkernel.h.

Definition at line 1266 of file fltkernel.h.

Definition at line 2239 of file fltkernel.h.

Referenced by FsRtlNotifyFilterChangeDirectory().

Definition at line 1782 of file fltkernel.h.

Definition at line 1782 of file fltkernel.h.

Definition at line 1988 of file fltkernel.h.

Definition at line 2239 of file fltkernel.h.

Referenced by FatDecodeFileObject(), and FsRtlNotifyFilterChangeDirectory().

_In_ PLIST_ENTRY _In_ PVOID _In_ PSTRING FullDirectoryName

Definition at line 2239 of file fltkernel.h.

Referenced by FsRtlNotifyFilterChangeDirectory().

Definition at line 2239 of file fltkernel.h.

_In_ ULONG Index

Definition at line 1824 of file fltkernel.h.

Referenced by A_SHAFinal(), AcpiDsBuildInternalPackageObj(), AcpiDsCreateOperands(), AcpiDsMethodDataDeleteAll(), AcpiDsMethodDataGetNode(), AcpiDsResultPop(), AcpiDsResultPush(), AcpiExNameSegment(), AcpiExOpcode_2A_1T_1R(), AcpiExOpcode_3A_1T_1R(), AcpiExOpcode_6A_0T_1R(), AcpiGetGpeDevice(), AcpiHwRead(), AcpiHwWrite(), AcpiNsRepair_PRT(), AcpiNsSortList(), AcpiRsCreatePciRoutingTable(), AcpiRsGetPciRoutingTableLength(), AcpiUtCreatePkgState(), AcpiUtReleaseOwnerId(), AddCategory(), CMainWindow::AddCategory(), CAppsListView::AddColumn(), AddIPAddressToListView(), AddItem(), AddMemoryDescriptor(), AddNewKbLayoutsByLcid(), AddResourceItems(), CFileDefExt::AddVersionString(), ApicInitializeIOApic(), BdaInitFilter(), BdaPropertyNodeTypes(), BdaPropertyPinTypes(), BdaPropertyTemplateConnections(), BestFit_FromNLS(), BlTblFindEntry(), BlTblMap(), BlTblSetEntry(), BootLogoFadeIn(), BT958HwAdapterControl(), CUSBRequest::BuildIsochronousEndpoint(), BuildUSBAudioFilterTopology(), BusLogic_IncrementSizeBucket(), calloc(), CaptureInitializeUrbAndIrp(), CdFindActiveVolDescriptor(), CdfsGetEntryName(), CdVerifyVolume(), ChanMgrReleaseChannel(), ChannelFromIndex(), ChannelGetReferenceCount(), CScanningTunner::CheckChanges(), CInputPin::CheckFormat(), COutputPin::CheckFormat(), CheckItemToIndex(), CheckListWndProc(), ClosePin(), CmpAddSubKey(), CmpAddValueToList(), CmpCompareNewValueDataAgainstKCBCache(), CmpCopyKeyValueList(), CmpCreateKeyControlBlock(), CmpCreateRootNode(), CmpDeepCopyKeyInternal(), CmpFindSubKeyByNumber(), CmpGetValueKeyFromCache(), CmpMarkIndexDirty(), CmpRemoveValueFromList(), CmQueryValueKey(), CKsAllocator::Commit(), CScanningTunner::CommitChanges(), CAppsListView::CompareFunc(), ComputeCompatibleFormat(), ConDrvValidateConsole(), ConMgrAdvanceCurrentChannel(), ConSrvGetObject(), ConSrvRemoveObject(), ConSrvValidateConsole(), ConvertBitmapInfo(), CKsProxy::ConvertTimeFormat(), CopyField(), CountTopologyComponents(), CKsProxy::CreateClockInstance(), CUSBDevice::CreateConfigurationDescriptor(), CreateDeviceIds(), CKsProxy::CreatePins(), CreatePrincipalListItem(), CreateSymbolicLink(), CSR_API(), CStdPSFactory_CreateProxy(), CStdPSFactory_CreateStub(), DdHmgAlloc(), DdHmgFree(), DdHmgLock(), DECLARE_INTERFACE_(), DeleteMixerWindowControls(), DestroyTabCtrlDialogs(), DestroyUsbChildDeviceObject(), DetectNt4SoundDevices(), DIB_1BPP_BitBlt(), DiskGetActivePartitionEntry(), DiskGetFirstExtendedPartitionEntry(), DiskGetFirstPartitionEntry(), DiskGetMbrPartitionEntry(), DiskReadBootRecord(), DisplayDeviceProperties(), DlgPreferencesProc(), DllRegisterServer(), DllUnregisterServer(), do_enumeratekey(), DoNotifyPositionEvents(), doSymSearch(), DrawFileSystemList(), DriveMapIsValidDriveString(), DriveMapMapDrivesInSection(), DumpAutomationTable(), DumpFilterDescriptor(), DumpFunctionDescriptor(), CUSBRequest::DumpQueueHead(), EffAppearanceDlgProc(), EnumAvailableAppProc(), EnumConnectionsCallback(), EnumerateKeyTest(), EnumerateValueTest(), EnumInstalledAppProc(), EnumInterfaces(), CInputPin::EnumMediaTypes(), COutputPin::EnumMediaTypes(), EtfspDeviceTableDestroyEntry(), EventCallback(), ExpAllocateHandleTableEntrySlow(), ExpInsertPoolTracker(), ExpRemovePoolTracker(), ExpSeedHotTags(), ext2_block_map(), ext2_expand_block(), ext2_expand_inode(), Ext2CheckExtent(), Ext2FreeBlock(), Ext2MapIndirect(), Ext2NewBlock(), Ext2OpenFile(), FAST486_OPCODE_HANDLER(), FATIsDirectoryEmpty(), FATXAddEntry(), FATXIsDirectoryEmpty(), FDO_CreateChildPdo(), FDO_DeviceRelations(), FFSAddMcbEntry(), FFSExpandInode(), FFSTruncateInode(), FFSv1BlockMap(), FileTableDestroyEntry(), FilterProcess(), FindActionIndex(), FindAudioFilterPins(), FindCheckItemIndexByAccessMask(), FindFastMethodHandler(), FindFastPropertyHandler(), CUSBQueue::FindInterruptEndpointDescriptor(), FindMethodHandler(), FindNodeContextWithId(), FindNodeContextWithNode(), FindProductName(), FindPropertyHandler(), FindProviderIndex(), FindRopInfo(), FindSelectedItem(), CUSBQueue::FindTransferDescriptorInInterruptHeadEndpoints(), FindWinMMDeviceIndex(), FlipOver(), CKsAllocator::FreeMediaSamples(), FsRtlLargeMcbTest(), FsRtlLargeMcbTestsExt2(), FsRtlLookupBaseMcbEntry(), FsRtlLookupLargeMcbEntry(), FsRtlLookupLastLargeMcbEntryAndIndex_internal(), FsRtlTest_FillBuffer(), GdiGetHandleUserData(), GdiIsHandleValid(), GdiIsHandleValidEx(), GetAutostartEntriesFromRegistry(), CKsProxy::GetAvailable(), CKsProxy::GetCapabilities(), CKsProxy::GetCurrentPosition(), GetDataRangeIndexForFormat(), GetDefaultInterface(), GetDeviceListInterfaces(), GetDisabledAutostartEntriesFromRegistry(), GetDisplayAdapterFromDevice(), CKsProxy::GetDuration(), GetGWListEntry(), GetHandleUserData(), GetIconOverlay(), GetIpAddressFromStringW(), GetIPListEntry(), GetListViewItem(), CAppsListView::GetLParam(), CKsProxy::GetMiscFlags(), GetNextString(), CBDADeviceControl::GetNodeDescriptors(), CBDADeviceControl::GetNodeInterfaces(), CBDADeviceControl::GetNodeTypes(), GetPinIdFromFilter(), CBDADeviceControl::GetPinTypes(), CKsProxy::GetPreroll(), GetSelectedProcessId(), GetSelectedUsageAction(), GetServices(), GetSoundDeviceCount(), CKsProxy::GetStopPosition(), CKsProxy::GetTimeFormat(), GetUser32Handle(), GetVolumeNameForVolumeMountPointW(), GspFindSwBreakpoint(), GspLoadBreakpoints(), GspLoadSwBreakpoint(), GspRemoveHwBreakpoint(), GspRemoveSwBreakpoint(), GspUnloadBreakpoints(), HalAllocateAdapterChannel(), HalBeginSystemInterrupt(), HalDisableSystemInterrupt(), HalEnableSystemInterrupt(), HandleDataIntersection(), CHubController::HandlePnp(), HDA_FDOStartDevice(), HDA_InitCorbRirbPos(), HDA_ResetController(), HDA_TransferCodecVerbs(), HEXEDIT_IndexFromPoint(), HfontCreate(), HidClassFDO_CopyDeviceRelations(), HidClassPDO_CreatePDO(), HidClassPDO_GetCollectionDescription(), HidClassPDO_GetReportDescription(), HidClassPDO_PnP(), HidParser_AddMainItem(), HidParser_CalculateCollectionSize(), HidParser_DispatchKey(), HidParser_FindReportInCollection(), HidParser_FreeCollectionDescription(), HidParser_GetCollectionCount(), HidParser_GetCollectionDescription(), HidParser_GetMaxUsageListLengthWithReportAndPage(), HidParser_GetReportItemTypeCountFromReportType(), HidParser_GetScaledUsageValueWithReport(), HidParser_GetSpecificValueCapsWithReport(), HidParser_GetUsagesWithReport(), HidParser_GetUsageValueWithReport(), HidParser_ParseReportDescriptor(), HidParser_SearchReportInCollection(), HidParser_SignRange(), HidParser_StoreCollection(), HidParser_TranslateUsageAndPagesToI8042ScanCodes(), HidParser_UpdateCurrentCollectionReport(), HidParser_UsageAndPageListDifference(), HidParser_UsageListDifference(), HidUsb_GetInputInterruptInterfaceHandle(), HvpAddFree(), HvpComputeFreeListIndex(), HvpCreateHive(), HvpCreateHiveFreeCellList(), HvpFindFree(), HvpRemoveFree(), IDirectSoundNotify_fnSetNotificationPositions(), IKsFilter_CreateDescriptors(), IKsFilter_fnRemoveProcessPin(), INetCfgComponentControl_fnApplyRegistryChanges(), InfGetBinaryField(), InfGetDataField(), InfGetIntField(), InfGetMultiSzField(), InfGetStringField(), InfpGetBinaryField(), InfpGetDataField(), InfpGetIntField(), InfpGetMultiSzField(), InfpGetStringField(), InfWriteFile(), InitCapturePin(), CUSBRequest::InitDescriptor(), InitDevUsageActions(), InitHardWareTypesPage(), CUSBHardwareDevice::InitializeController(), CLanStatus::InitializeNetTaskbarNotifications(), CUSBQueue::InitializeSyncSchedule(), InitializeSystemPage(), InitListViewColumns(), InitPagefileList(), InitProbeListPage(), InitStreamPin(), CFileDefExt::InitVersionPage(), IntCopyRegistryKey(), IntCreateCompatibleBitmap(), IntGdiReleaseRaoRgn(), IntGdiReleaseVisRgn(), IntTranslateCharsetInfo(), IntWinListChildren(), IoFreeAdapterChannel(), IoFreeMapRegisters(), IopInitializeBootDrivers(), IopInstallCriticalDevice(), IoSetDeviceInterfaceState(), CKsProxy::IsFormatSupported(), IsHandleValid(), IsValidPDO(), ITypeInfo_fnGetRefTypeInfo(), KbdHid_InsertScanCodes(), KdbpSymFindModule(), KdpReceivePacketLeader(), KeAddSystemServiceTable(), KeRemoveSystemServiceTable(), KeWaitForMultipleObjects(), KiScanReadyQueues(), KiTimerExpiration(), KsAllocateExtraData(), CKsInterfaceHandler::KsCompleteIo(), KsFastMethodHandler(), KsFastPropertyHandler(), KsFilterFactoryUpdateCacheData(), KsInitializeDevice(), CKsDataTypeHandler::KsIsMediaTypeInRanges(), KspAddCreateItemToList(), KspAddPropertyItem(), KspCacheAddData(), KspCopyEventSets(), KspCopyMethodSets(), KspCopyPropertySets(), KspCountEventSets(), KspCountMethodSets(), KspCountPropertySets(), KspCreatePin(), KspEnableEvent(), KspEnumerateBusRegistryKeys(), KspHandleDataIntersection(), KsPinDataIntersection(), KspInstallInterface(), KspMergePropertySet(), KspMethodHandlerWithAllocator(), KspPinPropertyHandler(), KspPropertyHandler(), KspRegisterDeviceInterfaces(), CKsInterfaceHandler::KsProcessMediaSamples(), KspValidateConnectRequest(), KsRegisterFilterWithNoKSPins(), CInputPin::KsSetPinFramingCache(), COutputPin::KsSetPinFramingCache(), light(), ListViewAddColumn(), ListViewCompareFunc(), ListViewGetlParam(), ListViewGetSelectedItemData(), ListViewSelectItem(), LoadDialogControls(), CInputPin::LoadProxyPlugins(), COutputPin::LoadProxyPlugins(), CKsProxy::LoadProxyPlugins(), LpcpCopyRequestData(), LsapDeleteDbObject(), LsarEnumerateAccountRights(), LsarpLookupPrivilegeDisplayName(), LsarRemoveAccountRights(), main(), MakeCheckItemVisible(), MapDefaultKey(), MapItemToRect(), MempGetOrCreatePageDir(), MempIsPageMapped(), MempMapSinglePage(), MENU_MouseMove(), MiInitializeSessionPool(), MiSessionCommitPageTables(), MiSessionInitializeWorkingSetList(), MiSetMulticast(), MiSpecialPoolCheckPattern(), MiSynchronizeSystemPde(), MixerControlChangeCallback(), MmAllocatePagesInLookupTable(), MmAreMemoryPagesAvailable(), MmBapFreeBlockAllocatorTableEntry(), MmCountFreePagesInLookupTable(), MmFindAvailablePages(), MmFindAvailablePagesBeforePage(), MMixerAddMixerControl(), MMixerAddMixerControlsToMixerLineByNodeIndexArray(), MMixerAddMixerSourceLines(), MMixerAddPinIndexToArray(), MMixerAllocateTopologyNodeArray(), MMixerAllocateTopologyPinArray(), MMixerApplyOutputFilterHack(), MMixerCheckFilterPinMidiSupport(), MMixerCheckFormat(), MMixerExploreTopology(), MMixerFindAudioDataRange(), MMixerGetAllUpOrDownstreamNodesFromPinIndex(), MMixerGetAllUpOrDownstreamPinsFromPinIndex(), MMixerGetConnectedFromLogicalTopologyPins(), MMixerGetLineControls(), MMixerGetLowestLogicalTopologyPinOffsetFromArray(), MMixerGetMidiInfoByIndexAndType(), MMixerGetMixerInfoByIndex(), MMixerGetNextNodesFromNodeIndex(), MMixerGetNextNodesFromPinIndex(), MMixerGetNodeIndexFromGuid(), MMixerGetNodeType(), MMixerGetUpOrDownstreamNodes(), MMixerGetUpOrDownStreamPins(), MMixerGetVolumeControlIndex(), MMixerGetWaveInfoByIndexAndType(), MMixerHandleAlternativeMixers(), MMixerInitializeFilter(), MMixerInitializeMidiForFilter(), MMixerInitializeTopologyNodes(), MMixerIsNodeConnectedToPin(), MMixerPrintMixerLineControls(), MMixerPrintMixers(), MMixerPrintTopology(), MMixerResetTopologyVisitStatus(), MMixerSetGetMuxControlDetails(), MMixerSetGetVolumeControlDetails(), MmMarkPagesInLookupTable(), MmMdFreeGlobalDescriptors(), MMSYS_InstallDevice(), MmUpdateLastFreePageHint(), MonitorSelWndProc(), MonSelCancelDragging(), MonSelContextMenu(), MonSelGetMonitorFont(), MonSelHitTest(), MonSelInitDragging(), MonSelNotifyMonitor(), MonSelPaint(), MonSelResetMonitors(), MonSelSetCurSelMonitor(), MonSelSetMonitorsInfo(), MonSelUpdateExtent(), MonSelUpdateMonitorsInfo(), MouHid_GetButtonFlags(), NetUserGetLocalGroups(), NtEnumerateKey(), NtEnumerateValueKey(), NtUserCreateAcceleratorTable(), ObDereferenceSecurityDescriptor(), ObIsDosDeviceLocallyMapped(), ObLogSecurityDescriptor(), OhciDeferredRoutine(), OkButton(), OnSelChange(), OnSet(), CCabinet::Open(), OpenAdapterHandle(), PcAddToPropertyTable(), PcCreateSubdeviceDescriptor(), PciCreateCompatibleIDsString(), PciCreateHardwareIDsString(), PciIdeXPdoQueryId(), PcRegisterSubdevice(), PDO_HandlePnp(), PerfDataGet(), PerfDataGetBasePriority(), PerfDataGetCommandLine(), PerfDataGetCPUTime(), PerfDataGetCPUUsage(), PerfDataGetGDIObjectCount(), PerfDataGetHandleCount(), PerfDataGetNonPagedPoolUsagePages(), PerfDataGetPagedPoolUsagePages(), PerfDataGetPageFaultCount(), PerfDataGetPageFaultCountDelta(), PerfDataGetPeakWorkingSetSizeBytes(), PerfDataGetSessionId(), PerfDataGetThreadCount(), PerfDataGetUSERObjectCount(), PerfDataGetVirtualMemorySizeBytes(), PerfDataGetWorkingSetSizeBytes(), PerfDataGetWorkingSetSizeDelta(), CScanningTunner::performDVBTTune(), PerformQualityConversion(), PerformSampleRateConversion(), PlayLogonSoundThread(), PRINTDLG_ChangePrinterA(), printMixerLine(), ProbeListPageDlgProc(), ProcessPageOnNotify(), profile_items_callback(), PropertyItemDispatch(), PtToCheckItemBox(), QSI_DEF(), CNetworkProvider::QueryInterface(), CKsProxy::QueryInterface(), CKsProxy::QueryPreferredFormat(), RawChannelIWrite(), RefreshServiceList(), RegisterDeviceInterfaces(), RegOverridePredefKey(), RegpCopyTree(), RenderInitializeUrbAndIrp(), RfsdScanDir(), RtlAddAce(), RtlAllocateHeap(), RtlAnsiStringToUnicodeString(), RtlFindLongestRunClear(), RtlFindLongestRunSet(), RtlGenerate8dot3Name(), RtlIsValidIndexHandle(), RtlOemStringToCountedUnicodeString(), RtlOemStringToUnicodeString(), RtlpClearFreeListsBit(), RtlpExtendHeap(), RtlpInitializeHeap(), RtlpSetFreeListsBit(), RtlpSplitEntry(), RtlReAllocateHeap(), RtlUnicodeStringToAnsiString(), RtlUnicodeStringToCountedOemString(), RtlUnicodeStringToOemString(), RtlUpcaseUnicodeStringToAnsiString(), RtlUpcaseUnicodeStringToCountedOemString(), RtlUpcaseUnicodeStringToOemString(), CMainWindow::s_EnumAvailableAppProc(), CMainWindow::s_EnumInstalledAppProc(), SampGetMembersInAlias(), SampRemoveAllMembersFromAlias(), SampRemoveMemberFromAllAliases(), SamrGetMembersInAlias(), SamrLookupDomainInSamServer(), SaveCurrentPowerActionPolicy(), ScmCheckDriver(), ScmGetDriverStatus(), ScrAcquireOwnership(), ScsiClassAssignDriveLetter(), ScsiClassRemoveDriveLetter(), SearchForLegacyDrivers(), CUSBDevice::SelectConfiguration(), CUSBDevice::SelectInterface(), SePrivilegePolicyCheck(), CUSBDevice::SetDeviceAddress(), CKsProxy::SetPinState(), CKsProxy::SetPositions(), CKsProxy::SetSyncSource(), CKsProxy::SetTimeFormat(), SettingsPageProc(), SetupDiCreateDeviceInterfaceRegKeyW(), SetupDiCreateDevRegKeyW(), SetVolumeCallback(), SHMapPIDLToSystemImageListIndex(), CNetConnectionPropertyUi::ShowNetworkComponentProperties(), ShowPartitionSizeInputBox(), SpiParseDeviceInfo(), SpiResourceToConfig(), StartApplication(), CScanningTunner::StartChanges(), CUSBHardwareDevice::StartController(), StdProxy_Construct(), StreamClassStartDevice(), StreamingDeviceSetupW(), StressTesting(), SysAudioHandleProperty(), SystemProcessTestWorker(), TabCtrl_OnSelChange(), TdbInsertToolbar(), test1(), test2(), test3(), test9(), test_HandleTables(), Test_RtlFindNextForwardRunClear(), test_TypeInfo2_GetContainingTypeLib(), TestObjectTypes(), TlsAlloc(), TlsGetValue(), TlsSetValue(), TOOLBAR_ChangeBitmap(), TrimGuidString(), TuiDrawCenteredText(), UDFCleanUpFile__(), UDFIsNameValid(), UDFUnlinkFile__(), UiInfoBox(), UninstallApplication(), CUSBQueue::UnlinkQueueHeadChain(), CNetworkProvider::UnRegisterDeviceFilter(), UpdateCheckItem(), UpdateCheckItemBox(), UpdateColumnDataHints(), UpdateDialogLineSliderControl(), UpdateDialogLineSwitchControl(), UpdateDiskLayout(), Usage(), UsbAudioAllocCaptureUrbIso(), UsbAudioGetDataRanges(), USBAudioPinBuildDescriptors(), USBAudioSelectAudioStreamingInterface(), USBCCG_InitIdsWithInterfaceDescriptor(), USBCCGP_BuildConfigurationDescriptor(), USBCCGP_EnumWithAssociationDescriptor(), USBCCGP_EnumWithAudioLegacy(), USBCCGP_InitFunctionDescriptor(), USBCCGP_LegacyEnum(), USBCCGP_SelectConfiguration(), USBHI_GetExtendedHubInformation(), USBHI_InitializeUsbDevice(), USBHUB_FdoHandleDeviceControl(), USBHUB_ParentFDOStartDevice(), USBSTOR_ClassRequest(), USBSTOR_FdoHandleDeviceRelations(), USBSTOR_FdoHandleRemoveDevice(), USBSTOR_FdoHandleStartDevice(), USBSTOR_GetFieldLength(), USBSTOR_GetPipeHandles(), USBSTOR_IsFloppy(), UserGetSystemMetrics(), VerifyDNSSuffix(), CFileDefExt::VersionPageProc(), vfatAddFCBToTable(), vfatDelFCBFromTable(), VgaInterpretCmdStream(), VgaWritePort(), VidBiosVideoService(), VideoFadeIn(), VideoFadeOut(), VTUTF8ChannelIWrite(), WaitForService(), WdmAudCleanup(), WdmAudIoctlClose(), WinLdrScanRegistry(), WndProc(), WriteLineSettings(), and COpenWithMenu::~COpenWithMenu().

_In_ FILTER_VOLUME_INFORMATION_CLASS InformationClass

Definition at line 1714 of file fltkernel.h.

Referenced by IopQueryDeviceInformation(), and SmpProcessFileRenames().

Definition at line 1071 of file fltkernel.h.

Definition at line 1804 of file fltkernel.h.

Definition at line 2416 of file fltkernel.h.

Definition at line 1744 of file fltkernel.h.

Definition at line 2532 of file fltkernel.h.

_Outptr_ PFLT_INSTANCE* LowerInstance

Definition at line 1680 of file fltkernel.h.

Definition at line 1468 of file fltkernel.h.

Referenced by EtfspCreateContext(), and NpGetClientSecurityContext().

Definition at line 2621 of file fltkernel.h.

Definition at line 2621 of file fltkernel.h.

Definition at line 2621 of file fltkernel.h.

Definition at line 2453 of file fltkernel.h.

_In_ PLIST_ENTRY NotifyList

Definition at line 2239 of file fltkernel.h.

_Must_inspect_result_ * NumberFiltersReturned PFLT_FILTER _In_ ULONG _Out_ PULONG NumberFiltersReturned

Definition at line 1782 of file fltkernel.h.

Definition at line 1804 of file fltkernel.h.

_Must_inspect_result_ _In_ ULONG _Out_ PULONG NumberVolumesReturned

Definition at line 1793 of file fltkernel.h.

_In_ PKTRANSACTION _Outptr_opt_ PFLT_CONTEXT * OldContext

Definition at line 1468 of file fltkernel.h.

Definition at line 2082 of file fltkernel.h.

_Out_opt_ PIO_PRIORITY_INFO OutputPriorityInfo

Definition at line 2662 of file fltkernel.h.

_In_ ULONG PoolTag

Definition at line 2520 of file fltkernel.h.

Referenced by ExpFindAndRemoveTagBigPages().

_In_ IO_PRIORITY_HINT PriorityHint

Definition at line 2682 of file fltkernel.h.

Definition at line 2653 of file fltkernel.h.

Definition at line 1977 of file fltkernel.h.

Referenced by ExQueueWorkItem().

_In_ PFLT_INSTANCE _Out_ PBOOLEAN RedirectionAllowed

Definition at line 2831 of file fltkernel.h.

Definition at line 2839 of file fltkernel.h.

_In_ PFLT_INSTANCE _Out_ PBOOLEAN RedirectionAllowedThisIo

Definition at line 2839 of file fltkernel.h.

_Outptr_ PFLT_FILTER * RetFilter

Definition at line 991 of file fltkernel.h.

Definition at line 1162 of file fltkernel.h.

Definition at line 1619 of file fltkernel.h.

Definition at line 1126 of file fltkernel.h.

Definition at line 1902 of file fltkernel.h.

Definition at line 2816 of file fltkernel.h.

Definition at line 2520 of file fltkernel.h.

_In_ PFLT_INSTANCE _Out_opt_ PBOOLEAN SourceDeviceStackSizeModified

Definition at line 2823 of file fltkernel.h.

_In_ PFLT_INSTANCE TargetInstance

Definition at line 2823 of file fltkernel.h.

Definition at line 2653 of file fltkernel.h.

Referenced by _ExAcquireFastMutexUnsafe(), _IRQL_requires_min_(), _KeAcquireGuardedMutex(), _KeAcquireGuardedMutexUnsafe(), _KeTryToAcquireGuardedMutex(), _tWinMain(), AcpiDsCreateWalkState(), AcpiPsParseAml(), CallSoundThread(), CdProcessException(), CmpInitializeHiveList(), ConDrvConsoleCtrlEventTimeout(), connect(), ConSrvConsoleCtrlEventTimeout(), DbgkExitProcess(), DbgkExitThread(), DbgkMapViewOfSection(), DbgkpQueueMessage(), DbgkpWakeTarget(), DbgkUnMapViewOfSection(), DECLSPEC_ALIGN(), DLDAcquireExclusive(), DLDAcquireShared(), DLDpAcquireResourceExclusiveLite(), DLDProcessThread(), DownloadDlgProc(), ExAcquireResourceExclusiveLite(), ExAcquireResourceSharedLite(), ExAcquireSharedStarveExclusive(), ExAcquireSharedWaitForExclusive(), ExIsResourceAcquiredSharedLite(), ExpCreateWorkerThread(), ExpInitializeWorkerThreads(), ExpRaiseHardError(), ExpTimerApcKernelRoutine(), ExpWaitForResource(), ExpWorkerThreadEntryPoint(), ExSetResourceOwnerPointer(), ExSwapinWorkerThreads(), Ext2ExceptionHandler(), ExTimerRundown(), ExTryToAcquireResourceExclusiveLite(), FFSExceptionHandler(), find_thread(), FirstSendHandler(), gdb_send_exception(), gethostbyaddr(), gethostbyname(), GetProcessLuid(), getprotobyname(), getprotobynumber(), getservbyname(), getservbyport(), getsockopt(), GspGetRegisters(), GspQuery(), GuiConsoleShowConsoleProperties(), GUIDisplayStatusMessage(), handle_gdb_query(), handle_gdb_thread_alive(), inet_ntoa(), InitThreadCallback(), IntTID2PTI(), IofCompleteRequest(), IoRaiseHardError(), IoSetThreadHardErrorMode(), KdbpAttachToProcess(), KdbpAttachToThread(), KdbpCmdThread(), KdbpInternalEnter(), Ke386CallBios(), Ke386SetIOPL(), KeAttachProcess(), KeDelayExecutionThread(), KeDetachProcess(), KeInitializeApc(), KeInitThread(), KeInsertQueueApc(), KePulseEvent(), KeQueryRuntimeProcess(), KeRemoveQueue(), KeRemoveQueueApc(), KeRundownQueue(), KeRundownThread(), KeSetAffinityProcess(), KeSetEvent(), KeSetEventBoostPriority(), KeSetKernelStackSwapEnable(), KeSetPriorityAndQuantumProcess(), KeSetQuantumProcess(), KeStackAttachProcess(), KeTerminateThread(), KeTestAlertThread(), KeUnstackDetachProcess(), KeUpdateRunTime(), KeWaitForGate(), KeWaitForMultipleObjects(), KeWaitForSingleObject(), Ki386AdjustEsp0(), KiActivateWaiterQueue(), KiCallbackReturnHandler(), KiCheckForApcDelivery(), KiDeferredReadyThread(), KiDeliverApc(), KiEnterV86Mode(), KiExitDispatcher(), KiExitV86Mode(), KiExitV86Trap(), KiFlushNPXState(), KiInitializeSystem(), KiInsertQueue(), KiInsertQueueApc(), KiProcessDeferredReadyList(), KiQuantumEnd(), KiScanReadyQueues(), KiSelectNextThread(), KiSelectReadyThread(), KiSoftwareInterruptHandler(), KiSystemCallHandler(), KiSystemServiceHandler(), KiSystemStartupBootStack(), KiTrap02(), KiTrap07Handler(), KiTrap0EHandler(), KiTrap10Handler(), KiTrap13Handler(), KmtFinishThread(), LpcpDeletePort(), LpcpDestroyPortQueue(), LpcpFreeToPortZone(), LpcRequestPort(), LpcRequestWaitReplyPort(), main(), MiProtectVirtualMemory(), MiSetProtectionOnSection(), MmAccessFaultCacheSection(), MmCleanProcessAddressSpace(), MmDeleteTeb(), MmGrowKernelStackEx(), MmIsRecursiveIoFault(), MmNotPresentFaultCacheSection(), MmZeroPageThread(), NotifyProcessForShutdown(), NtAlertResumeThread(), NtAlertThread(), NtCancelIoFile(), NtCompleteConnectPort(), NtContinue(), NtGetContextThread(), NtImpersonateThread(), NtOpenProcess(), NtOpenThread(), NtOpenThreadTokenEx(), NtQueryInformationThread(), NtQueueApcThread(), NtRaiseException(), NtRegisterThreadTerminatePort(), NtReplyPort(), NtReplyWaitReceivePortEx(), NtRequestPort(), NtRequestWaitReplyPort(), NtResumeThread(), NtSecureConnectPort(), NtSetContextThread(), NtSetInformationProcess(), NtSetInformationThread(), NtSetThreadExecutionState(), NtSetTimer(), NtSuspendThread(), NtTerminateProcess(), NtTerminateThread(), NtUserBuildHwndList(), NtUserGetGUIThreadInfo(), NtUserGetThreadDesktop(), NtUserQueryInformationThread(), NtUserSetInformationThread(), NtUserSetWinEventHook(), NtWaitForDebugEvent(), NtYieldExecution(), ObpReferenceProcessObjectByHandle(), PoRequestShutdownWait(), PsConvertToGuiThread(), PsGetContextThread(), PsGetNextProcessThread(), PspCreateThread(), PspDeleteThread(), PspExitNormalApc(), PspExitThread(), PspGetOrSetContextKernelRoutine(), PspReapRoutine(), PspSystemThreadStartup(), PspTerminateProcess(), PspUserThreadStartup(), PsResumeProcess(), PsSetContextThread(), PsSuspendProcess(), PsTerminateSystemThread(), RfsdExceptionHandler(), RtlEnterCriticalSection(), RtlLeaveCriticalSection(), RtlpCaptureStackLimits(), RtlWalkFrameChain(), send_kd_state_change(), setsockopt(), socket(), SoundThreadMain(), SoundThreadTerminator(), START_TEST(), StartDefragThread(), TestConnect(), TestEventConcurrent(), TestEventFunctional(), TestEventScheduling(), TestFastMutex(), TestGuardedMutexConcurrent(), TestObjectTypes(), TestTdi(), TestTimerFunctional(), UDFExceptionHandler(), VdmpStartExecution(), WPUQueryBlockingCallback(), WSAAccept(), WSAAddressToStringA(), WSAAddressToStringW(), WSAAsyncGetHostByAddr(), WSAAsyncGetHostByName(), WSAAsyncGetProtoByName(), WSAAsyncGetProtoByNumber(), WSAAsyncGetServByName(), WSAAsyncGetServByPort(), WSACancelAsyncRequest(), WSACancelBlockingCall(), WSACleanup(), WSAIsBlocking(), WSAJoinLeaf(), WSALookupServiceBeginW(), WSALookupServiceEnd(), WSALookupServiceNextW(), WSARecvDisconnect(), WSASendDisconnect(), WSASetBlockingHook(), WSASocketW(), WSAStringToAddressA(), WSAStringToAddressW(), WSAUnhookBlockingHook(), WsSlowProlog(), WsSlowPrologTid(), WsThreadAllocate(), WsThreadBlockingCallback(), WsThreadCreate(), WsThreadDestroyCurrentThread(), and WsThreadGetThreadId().

_In_ PKTRANSACTION Transaction

Definition at line 2366 of file fltkernel.h.

_In_ PKTRANSACTION _In_opt_ PFLT_CONTEXT TransactionContext

Definition at line 2453 of file fltkernel.h.

_In_ PLIST_ENTRY _In_ PVOID _In_ PSTRING _In_ BOOLEAN _In_ BOOLEAN _In_ ULONG _In_opt_ PIRP _In_opt_ PCHECK_FOR_TRAVERSE_ACCESS TraverseCallback
_In_opt_ PCOMPLETE_LOCK_IRP_ROUTINE _In_opt_ PUNLOCK_ROUTINE UnlockRoutine

Definition at line 2124 of file fltkernel.h.

Referenced by FsRtlAllocateFileLock(), and FsRtlInitializeFileLock().

_Outptr_ PFLT_INSTANCE* UpperInstance

Definition at line 1687 of file fltkernel.h.

_In_ PFLT_VOLUME Volume

Definition at line 1162 of file fltkernel.h.

Definition at line 2284 of file fltkernel.h.

Definition at line 1752 of file fltkernel.h.

Definition at line 1793 of file fltkernel.h.

_In_ ULONG VolumePropertiesLength

Definition at line 1735 of file fltkernel.h.

Definition at line 1977 of file fltkernel.h.

Referenced by IoQueueWorkItem(), and KeRemoveQueue().