ReactOS 0.4.15-dev-7788-g1ad9096
fltmgrint.h
Go to the documentation of this file.
1#ifndef _FLTMGR_INTERNAL_H
2#define _FLTMGR_INTERNAL_H
3
4
5#define MAX_CONTEXT_TYPES 6
6
7
8typedef enum _FLT_OBJECT_FLAGS
9{
14 FLT_OBFL_TYPE_VOLUME = 0x4000000
15
17
19{
22
24
25typedef struct _FLT_OBJECT // size = 0x14
26{
31
33
35{
40 char Flags;
42
44
46{
50
52
54{
58
60
61typedef struct _FLT_TYPE
62{
65
67
68// http://fsfilters.blogspot.co.uk/2010/02/filter-manager-concepts-part-1.html
69typedef struct _FLTP_FRAME
70{
73 unsigned int FrameID;
86 //FLT_PRCB *Prcb;
89 //FLTP_IRPCTRL_STACK_PROFILER IrpCtrlStackProfiler;
92 //STATIC_IRP_CONTROL GlobalSIC;
93
95
96typedef struct _FLT_FILTER // size = 0x120
97{
124
126
128{
131 INSFL_INITING = 0x04
132
134
135
136
137typedef struct _FLT_INSTANCE // size = 0x144 (324)
138{
141 PVOID Volume; //PFLT_VOLUME
148 PVOID Context; //PCONTEXT_NODE
149 PVOID TrackCompletionNodes; //PRACK_COMPLETION_NODES
150 PVOID CallbackNodes[50]; //PCALLBACK_NODE
151
153
154
155typedef struct _TREE_ROOT
156{
158
160
161typedef struct _CONTEXT_LIST_CTRL
162{
164
166
167// http://fsfilters.blogspot.co.uk/2010/02/filter-manager-concepts-part-6.html
168typedef struct _STREAM_LIST_CTRL // size = 0xC8 (200)
169{
173 ULONG Flags; //STREAM_LIST_CTRL_FLAGS Flags;
180 ULONG NormalizedNameCache; //NAME_CACHE_LIST_CTRL NormalizedNameCache;
181 ULONG ShortNameCache; // NAME_CACHE_LIST_CTRL ShortNameCache;
182 ULONG OpenedNameCache; // NAME_CACHE_LIST_CTRL OpenedNameCache;
184
186
187
189{
199
201
202
204{
210
212
213
214typedef struct _FLT_PORT_OBJECT
215{
225
227
228
230{
239
241
242
244{
249
251
252
253typedef struct _CALLBACK_CTRL
254{
257
259
260
262{
270
272
273
275{
284
286
287
289{
294
296
297
298typedef struct _FLT_VOLUME
299{
302 FLT_FILESYSTEM_TYPE FileSystemType;
323
325
326
327typedef struct _MANAGER_CCB
328{
330 unsigned int Iterator;
331
333
334typedef struct _FILTER_CCB
335{
337 unsigned int Iterator;
338
340
341typedef struct _INSTANCE_CCB
342{
344
346
347typedef struct _VOLUME_CCB
348{
350 unsigned int Iterator;
351
353
354typedef struct _PORT_CCB
355{
358
360
361
362typedef union _CCB_TYPE
363{
369
371
372
373typedef struct _FLT_CCB
374{
377
379
380VOID
382 _Out_ PEX_RUNDOWN_REF RundownRef
383);
384
387 _Inout_ PEX_RUNDOWN_REF RundownRef
388);
389
392 _Inout_ PEX_RUNDOWN_REF RundownRef
393);
394
396NTAPI
398 _Inout_ PEX_RUNDOWN_REF RundownRef
399);
400
403 _Inout_ PEX_RUNDOWN_REF RundownRef
404);
405
406
411);
412
417);
418
419ULONG
422);
423
424VOID
427);
428
433 _In_ BOOLEAN CopyExisting
434);
435
436VOID
439);
440
441
442
447);
448
453);
454
459);
460
465);
466
470);
471
472#endif /* _FLTMGR_INTERNAL_H */
static USHORT USHORT * NewLength
unsigned char BOOLEAN
LONG NTSTATUS
Definition: precomp.h:26
_In_ PIRP Irp
Definition: csq.h:116
ULONG ERESOURCE
Definition: env_spec_w32.h:594
NTSTATUS(FLTAPI * PFLT_INSTANCE_QUERY_TEARDOWN_CALLBACK)(_In_ PCFLT_RELATED_OBJECTS FltObjects, _In_ FLT_INSTANCE_QUERY_TEARDOWN_FLAGS Flags)
Definition: fltkernel.h:555
VOID(FLTAPI * PFLT_INSTANCE_TEARDOWN_CALLBACK)(_In_ PCFLT_RELATED_OBJECTS FltObjects, _In_ FLT_INSTANCE_TEARDOWN_FLAGS Reason)
Definition: fltkernel.h:568
USHORT FLT_CONTEXT_TYPE
Definition: fltkernel.h:436
VOID(FLTAPI * PFLT_DISCONNECT_NOTIFY)(_In_opt_ PVOID ConnectionCookie)
Definition: fltkernel.h:856
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: fltkernel.h:546
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)
Definition: fltkernel.h:839
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: fltkernel.h:678
VOID(FLTAPI * PFLT_NORMALIZE_CONTEXT_CLEANUP)(_In_opt_ PVOID *NormalizationContext)
Definition: fltkernel.h:701
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: fltkernel.h:848
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)
Definition: fltkernel.h:664
VOID(FLTAPI * PFLT_CONTEXT_CLEANUP_CALLBACK)(_In_ PFLT_CONTEXT Context, _In_ FLT_CONTEXT_TYPE ContextType)
Definition: fltkernel.h:494
NTSTATUS(FLTAPI * PFLT_FILTER_UNLOAD_CALLBACK)(FLT_FILTER_UNLOAD_FLAGS Flags)
Definition: fltkernel.h:654
struct _FLT_OBJECT FLT_OBJECT
struct _FLT_MUTEX_LIST_HEAD FLT_MUTEX_LIST_HEAD
struct _FLT_TYPE FLT_TYPE
VOID FltpObjectPointerDereference(_In_ PFLT_OBJECT Object)
Definition: Object.c:335
struct _CONTEXT_LIST_CTRL * PCONTEXT_LIST_CTRL
struct _FLT_MESSAGE_WAITER_QUEUE * PFLT_MESSAGE_WAITER_QUEUE
struct _FLT_TYPE * PFLT_TYPE
union _CCB_TYPE CCB_TYPE
struct _NAME_CACHE_VOLUME_CTRL NAME_CACHE_VOLUME_CTRL
struct _FLT_SERVER_PORT_OBJECT * PFLT_SERVER_PORT_OBJECT
BOOLEAN FltpExAcquireRundownProtection(_Inout_ PEX_RUNDOWN_REF RundownRef)
Definition: Object.c:218
struct _FLT_FILTER * PFLT_FILTER
enum _FLT_INSTANCE_FLAGS FLT_INSTANCE_FLAGS
struct _TREE_ROOT * PTREE_ROOT
struct _ALLOCATE_CONTEXT_HEADER * PALLOCATE_CONTEXT_HEADER
enum _CALLBACK_NODE_FLAGS CALLBACK_NODE_FLAGS
BOOLEAN FltpExRundownCompleted(_Inout_ PEX_RUNDOWN_REF RundownRef)
Definition: Object.c:231
NTSTATUS FltpGetObjectName(_In_ PVOID Object, _Inout_ PUNICODE_STRING ObjectName)
Definition: Object.c:263
NTSTATUS FltpSetupCommunicationObjects(_In_ PDRIVER_OBJECT DriverObject)
Definition: Messaging.c:377
struct _FILTER_CCB FILTER_CCB
struct _STREAM_LIST_CTRL * PSTREAM_LIST_CTRL
#define MAX_CONTEXT_TYPES
Definition: fltmgrint.h:5
NTSTATUS FltpReallocateUnicodeString(_In_ PUNICODE_STRING String, _In_ SIZE_T NewLength, _In_ BOOLEAN CopyExisting)
Definition: Lib.c:39
struct _FLTP_FRAME * PFLTP_FRAME
_FLT_OBJECT_FLAGS
Definition: fltmgrint.h:9
@ FLT_OBFL_TYPE_VOLUME
Definition: fltmgrint.h:14
@ FLT_OBFL_TYPE_FILTER
Definition: fltmgrint.h:13
@ FLT_OBFL_DRAINING
Definition: fltmgrint.h:10
@ FLT_OBFL_TYPE_INSTANCE
Definition: fltmgrint.h:12
@ FLT_OBFL_ZOMBIED
Definition: fltmgrint.h:11
ULONG FltpObjectPointerReference(_In_ PFLT_OBJECT Object)
Definition: Object.c:322
struct _NAME_CACHE_VOLUME_CTRL_STATS NAME_CACHE_VOLUME_CTRL_STATS
struct _FLT_CCB FLT_CCB
struct _NAME_CACHE_VOLUME_CTRL_STATS * PNAME_CACHE_VOLUME_CTRL_STATS
struct _CALLBACK_CTRL CALLBACK_CTRL
struct _ALLOCATE_CONTEXT_HEADER ALLOCATE_CONTEXT_HEADER
struct _INSTANCE_CCB * PINSTANCE_CCB
enum _FLT_OBJECT_FLAGS * PFLT_OBJECT_FLAGS
enum _CALLBACK_NODE_FLAGS * PCALLBACK_NODE_FLAGS
_FLT_FILTER_FLAGS
Definition: fltmgrint.h:19
@ FLTFL_FILTERING_INITIATED
Definition: fltmgrint.h:21
@ FLTFL_MANDATORY_UNLOAD_IN_PROGRESS
Definition: fltmgrint.h:20
struct _FLT_FILTER FLT_FILTER
struct _FLT_RESOURCE_LIST_HEAD FLT_RESOURCE_LIST_HEAD
struct _FLT_SERVER_PORT_OBJECT FLT_SERVER_PORT_OBJECT
_FLT_INSTANCE_FLAGS
Definition: fltmgrint.h:128
@ INSFL_CAN_BE_DETACHED
Definition: fltmgrint.h:129
@ INSFL_INITING
Definition: fltmgrint.h:131
@ INSFL_DELETING
Definition: fltmgrint.h:130
enum _FLT_FILTER_FLAGS FLT_FILTER_FLAGS
_CALLBACK_NODE_FLAGS
Definition: fltmgrint.h:244
@ CBNFL_SKIP_CACHED_IO
Definition: fltmgrint.h:246
@ CBNFL_SKIP_NON_DASD_IO
Definition: fltmgrint.h:248
@ CBNFL_SKIP_PAGING_IO
Definition: fltmgrint.h:245
@ CBNFL_USE_NAME_CALLBACK_EX
Definition: fltmgrint.h:247
NTSTATUS FltpMsgCreate(_In_ PDEVICE_OBJECT DeviceObject, _Inout_ PIRP Irp)
Definition: Messaging.c:223
struct _FILTER_CCB * PFILTER_CCB
struct _FLT_MESSAGE_WAITER_QUEUE FLT_MESSAGE_WAITER_QUEUE
struct _INSTANCE_CCB INSTANCE_CCB
enum _FLT_VOLUME_FLAGS FLT_VOLUME_FLAGS
enum _FLT_VOLUME_FLAGS * PFLT_VOLUME_FLAGS
struct _PORT_CCB * PPORT_CCB
_FLT_VOLUME_FLAGS
Definition: fltmgrint.h:230
@ VOLFL_ENABLE_NAME_CACHING
Definition: fltmgrint.h:236
@ VOLFL_NETWORK_FILESYSTEM
Definition: fltmgrint.h:231
@ VOLFL_STANDARD_LINK_NOT_SUPPORTED
Definition: fltmgrint.h:238
@ VOLFL_PENDING_MOUNT_SETUP_NOTIFIES
Definition: fltmgrint.h:232
@ VOLFL_SENT_SHUTDOWN_IRP
Definition: fltmgrint.h:235
@ VOLFL_MOUNT_SETUP_NOTIFIES_CALLED
Definition: fltmgrint.h:233
@ VOLFL_MOUNTING
Definition: fltmgrint.h:234
@ VOLFL_FILTER_EVER_ATTACHED
Definition: fltmgrint.h:237
BOOLEAN FltpExReleaseRundownProtection(_Inout_ PEX_RUNDOWN_REF RundownRef)
Definition: Object.c:224
struct _FLT_OBJECT * PFLT_OBJECT
struct _FLT_VOLUME FLT_VOLUME
struct _NAME_CACHE_VOLUME_CTRL * PNAME_CACHE_VOLUME_CTRL
struct _FLT_PORT_OBJECT * PFLT_PORT_OBJECT
struct _PORT_CCB PORT_CCB
union _CCB_TYPE * PCCB_TYPE
struct _FLT_PORT_OBJECT FLT_PORT_OBJECT
NTSTATUS FltpDispatchHandler(_In_ PDEVICE_OBJECT DeviceObject, _Inout_ PIRP Irp)
Definition: Dispatch.c:103
struct _CALLBACK_CTRL * PCALLBACK_CTRL
struct _NAME_CACHE_LIST_CTRL_STATS NAME_CACHE_LIST_CTRL_STATS
VOID FltpExInitializeRundownProtection(_Out_ PEX_RUNDOWN_REF RundownRef)
Definition: Object.c:212
NTSTATUS NTAPI FltpObjectRundownWait(_Inout_ PEX_RUNDOWN_REF RundownRef)
Definition: Object.c:238
NTSTATUS FltpMsgDispatch(_In_ PDEVICE_OBJECT DeviceObject, _Inout_ PIRP Irp)
Definition: Messaging.c:256
struct _NAME_CACHE_LIST_CTRL_STATS * PNAME_CACHE_LIST_CTRL_STATS
enum _FLT_OBJECT_FLAGS FLT_OBJECT_FLAGS
struct _VOLUME_CCB * PVOLUME_CCB
struct _CONTEXT_LIST_CTRL CONTEXT_LIST_CTRL
enum _FLT_FILTER_FLAGS * PFLT_FILTER_FLAGS
struct _FLT_RESOURCE_LIST_HEAD * PFLT_RESOURCE_LIST_HEAD
VOID FltpFreeUnicodeString(_In_ PUNICODE_STRING String)
Definition: Lib.c:24
struct _STREAM_LIST_CTRL STREAM_LIST_CTRL
struct _FLTP_FRAME FLTP_FRAME
NTSTATUS FltpGetBaseDeviceObjectName(_In_ PDEVICE_OBJECT DeviceObject, _Inout_ PUNICODE_STRING ObjectName)
Definition: Object.c:245
struct _TREE_ROOT TREE_ROOT
struct _FLT_INSTANCE FLT_INSTANCE
NTSTATUS FltpDeviceControlHandler(_In_ PDEVICE_OBJECT DeviceObject, _Inout_ PIRP Irp)
Definition: Dispatch.c:37
struct _FLT_MUTEX_LIST_HEAD * PFLT_MUTEX_LIST_HEAD
struct _MANAGER_CCB MANAGER_CCB
struct _MANAGER_CCB * PMANAGER_CCB
struct _VOLUME_CCB VOLUME_CCB
struct _FLT_VOLUME * PFLT_VOLUME
struct _FLT_CCB * PFLT_CCB
struct _FLT_INSTANCE * PFLT_INSTANCE
enum _FLT_INSTANCE_FLAGS * PFLT_INSTANCE_FLAGS
#define _Inout_
Definition: ms_sal.h:378
#define _Out_
Definition: ms_sal.h:345
#define _In_
Definition: ms_sal.h:308
long LONG
Definition: pedump.c:60
unsigned short USHORT
Definition: pedump.c:61
FLT_CONTEXT_TYPE ContextType
Definition: fltmgrint.h:39
struct _ALLOCATE_CONTEXT_HEADER * Next
Definition: fltmgrint.h:38
PFLT_CONTEXT_CLEANUP_CALLBACK ContextCleanupCallback
Definition: fltmgrint.h:37
CALLBACK_NODE_FLAGS OperationFlags[50]
Definition: fltmgrint.h:256
LIST_ENTRY OperationLists[50]
Definition: fltmgrint.h:255
TREE_ROOT List
Definition: fltmgrint.h:163
PFLT_FILTER Filter
Definition: fltmgrint.h:336
unsigned int Iterator
Definition: fltmgrint.h:337
NPAGED_LOOKASIDE_LIST LargeIrpCtrlLookasideList
Definition: fltmgrint.h:91
FLT_MUTEX_LIST_HEAD AttachedFileSystems
Definition: fltmgrint.h:82
void * PrcbPoolToFree
Definition: fltmgrint.h:87
ERESOURCE FilterUnloadLock
Definition: fltmgrint.h:84
char SmallIrpCtrlStackSize
Definition: fltmgrint.h:78
FLT_MUTEX_LIST_HEAD ZombiedFltObjectContexts
Definition: fltmgrint.h:83
FLT_RESOURCE_LIST_HEAD RegisteredFilters
Definition: fltmgrint.h:79
FAST_MUTEX DeviceObjectAttachLock
Definition: fltmgrint.h:85
LIST_ENTRY Links
Definition: fltmgrint.h:72
FLT_RESOURCE_LIST_HEAD AttachedVolumes
Definition: fltmgrint.h:80
ERESOURCE AltitudeLock
Definition: fltmgrint.h:74
void * LookasidePoolToFree
Definition: fltmgrint.h:88
UNICODE_STRING AltitudeIntervalHigh
Definition: fltmgrint.h:76
NPAGED_LOOKASIDE_LIST SmallIrpCtrlLookasideList
Definition: fltmgrint.h:90
unsigned int FrameID
Definition: fltmgrint.h:73
char LargeIrpCtrlStackSize
Definition: fltmgrint.h:77
LIST_ENTRY MountingVolumes
Definition: fltmgrint.h:81
UNICODE_STRING AltitudeIntervalLow
Definition: fltmgrint.h:75
FLT_TYPE Type
Definition: fltmgrint.h:71
FLT_TYPE Type
Definition: fltmgrint.h:375
CCB_TYPE Data
Definition: fltmgrint.h:376
PFLT_INSTANCE_QUERY_TEARDOWN_CALLBACK InstanceQueryTeardown
Definition: fltmgrint.h:108
FLT_MUTEX_LIST_HEAD PortList
Definition: fltmgrint.h:122
FLT_RESOURCE_LIST_HEAD InstanceList
Definition: fltmgrint.h:104
PFLT_GENERATE_FILE_NAME GenerateFileName
Definition: fltmgrint.h:115
FLT_OBJECT Base
Definition: fltmgrint.h:98
EX_PUSH_LOCK PortLock
Definition: fltmgrint.h:123
FLT_MUTEX_LIST_HEAD ConnectionList
Definition: fltmgrint.h:121
PFLT_FILTER_UNLOAD_CALLBACK OldDriverUnload
Definition: fltmgrint.h:119
PVOID VerifierExtension
Definition: fltmgrint.h:105
PFLT_FILTER_UNLOAD_CALLBACK FilterUnload
Definition: fltmgrint.h:106
FLT_FILTER_FLAGS Flags
Definition: fltmgrint.h:102
PFLTP_FRAME Frame
Definition: fltmgrint.h:99
PFLT_NORMALIZE_CONTEXT_CLEANUP NormalizeContextCleanup
Definition: fltmgrint.h:117
PFLT_INSTANCE_SETUP_CALLBACK InstanceSetup
Definition: fltmgrint.h:107
PFLT_INSTANCE_TEARDOWN_CALLBACK InstanceTeardownComplete
Definition: fltmgrint.h:110
PDRIVER_OBJECT DriverObject
Definition: fltmgrint.h:103
PFLT_INSTANCE_TEARDOWN_CALLBACK InstanceTeardownStart
Definition: fltmgrint.h:109
PFLT_OPERATION_REGISTRATION Operations
Definition: fltmgrint.h:118
PALLOCATE_CONTEXT_HEADER SupportedContexts[MAX_CONTEXT_TYPES]
Definition: fltmgrint.h:112
PALLOCATE_CONTEXT_HEADER SupportedContextsListHead
Definition: fltmgrint.h:111
PVOID PreVolumeMount
Definition: fltmgrint.h:113
UNICODE_STRING Name
Definition: fltmgrint.h:100
PFLT_NORMALIZE_NAME_COMPONENT NormalizeNameComponent
Definition: fltmgrint.h:116
FLT_MUTEX_LIST_HEAD ActiveOpens
Definition: fltmgrint.h:120
UNICODE_STRING DefaultAltitude
Definition: fltmgrint.h:101
PVOID PostVolumeMount
Definition: fltmgrint.h:114
PVOID Context
Definition: fltmgrint.h:148
UNICODE_STRING Altitude
Definition: fltmgrint.h:144
PVOID TrackCompletionNodes
Definition: fltmgrint.h:149
PVOID Volume
Definition: fltmgrint.h:141
FLT_OBJECT Base
Definition: fltmgrint.h:139
PFLT_FILTER Filter
Definition: fltmgrint.h:142
UNICODE_STRING Name
Definition: fltmgrint.h:145
LIST_ENTRY FilterLink
Definition: fltmgrint.h:146
PVOID CallbackNodes[50]
Definition: fltmgrint.h:150
FLT_INSTANCE_FLAGS Flags
Definition: fltmgrint.h:143
ERESOURCE ContextLock
Definition: fltmgrint.h:147
ULONG OperationRundownRef
Definition: fltmgrint.h:140
FLT_MUTEX_LIST_HEAD WaiterQ
Definition: fltmgrint.h:206
LIST_ENTRY mList
Definition: fltmgrint.h:56
FAST_MUTEX mLock
Definition: fltmgrint.h:55
EX_RUNDOWN_REF RundownRef
Definition: fltmgrint.h:29
ULONG PointerCount
Definition: fltmgrint.h:28
LIST_ENTRY PrimaryLink
Definition: fltmgrint.h:30
volatile FLT_OBJECT_FLAGS Flags
Definition: fltmgrint.h:27
BOOLEAN Disconnected
Definition: fltmgrint.h:224
ULONGLONG MessageId
Definition: fltmgrint.h:222
EX_RUNDOWN_REF MsgNotifRundownRef
Definition: fltmgrint.h:219
PFLT_SERVER_PORT_OBJECT ServerPort
Definition: fltmgrint.h:217
FLT_MESSAGE_WAITER_QUEUE MsgQ
Definition: fltmgrint.h:221
KEVENT DisconnectEvent
Definition: fltmgrint.h:223
LIST_ENTRY FilterLink
Definition: fltmgrint.h:216
FAST_MUTEX Lock
Definition: fltmgrint.h:220
PFLT_DISCONNECT_NOTIFY DisconnectNotify
Definition: fltmgrint.h:192
PFLT_MESSAGE_NOTIFY MessageNotify
Definition: fltmgrint.h:193
PFLT_CONNECT_NOTIFY ConnectNotify
Definition: fltmgrint.h:191
USHORT Signature
Definition: fltmgrint.h:63
USHORT Size
Definition: fltmgrint.h:64
PDEVICE_OBJECT DeviceObject
Definition: fltmgrint.h:303
FLT_RESOURCE_LIST_HEAD FileListCtrls
Definition: fltmgrint.h:317
EX_PUSH_LOCK TxVolContextListLock
Definition: fltmgrint.h:321
PFLT_VOLUME VolumeInNextFrame
Definition: fltmgrint.h:306
PFLTP_FRAME Frame
Definition: fltmgrint.h:307
CONTEXT_LIST_CTRL VolumeContexts
Definition: fltmgrint.h:315
ULONG TargetedOpenActiveCount
Definition: fltmgrint.h:320
FLT_FILESYSTEM_TYPE FileSystemType
Definition: fltmgrint.h:302
UNICODE_STRING DeviceName
Definition: fltmgrint.h:308
UNICODE_STRING CDODriverName
Definition: fltmgrint.h:311
UNICODE_STRING GuidName
Definition: fltmgrint.h:309
FLT_RESOURCE_LIST_HEAD StreamListCtrls
Definition: fltmgrint.h:316
EX_PUSH_LOCK ContextLock
Definition: fltmgrint.h:314
FLT_OBJECT Base
Definition: fltmgrint.h:300
FLT_RESOURCE_LIST_HEAD InstanceList
Definition: fltmgrint.h:312
TREE_ROOT TxVolContexts
Definition: fltmgrint.h:322
UNICODE_STRING CDODeviceName
Definition: fltmgrint.h:310
FLT_VOLUME_FLAGS Flags
Definition: fltmgrint.h:301
NAME_CACHE_VOLUME_CTRL NameCacheCtrl
Definition: fltmgrint.h:318
CALLBACK_CTRL Callbacks
Definition: fltmgrint.h:313
ERESOURCE MountNotifyLock
Definition: fltmgrint.h:319
PFLT_VOLUME FrameZeroVolume
Definition: fltmgrint.h:305
PDEVICE_OBJECT DiskDeviceObject
Definition: fltmgrint.h:304
PFLT_INSTANCE Instance
Definition: fltmgrint.h:343
Definition: csq.h:222
Definition: typedefs.h:120
unsigned int Iterator
Definition: fltmgrint.h:330
PFLTP_FRAME Frame
Definition: fltmgrint.h:329
NAME_CACHE_LIST_CTRL_STATS NormalizedNames
Definition: fltmgrint.h:278
NAME_CACHE_LIST_CTRL_STATS ShortNames
Definition: fltmgrint.h:280
NAME_CACHE_LIST_CTRL_STATS OpenedNames
Definition: fltmgrint.h:279
LARGE_INTEGER LastRenameCompleted
Definition: fltmgrint.h:292
NAME_CACHE_VOLUME_CTRL_STATS Stats
Definition: fltmgrint.h:293
PFLT_PORT_OBJECT Port
Definition: fltmgrint.h:356
FLT_MUTEX_LIST_HEAD ReplyWaiterList
Definition: fltmgrint.h:357
ULONG NormalizedNameCache
Definition: fltmgrint.h:180
ULONG ShortNameCache
Definition: fltmgrint.h:181
ULONG OpenedNameCache
Definition: fltmgrint.h:182
ERESOURCE ContextLock
Definition: fltmgrint.h:175
int AllNameContextsTemporary
Definition: fltmgrint.h:183
LARGE_INTEGER LastRenameCompleted
Definition: fltmgrint.h:179
ERESOURCE NameCacheLock
Definition: fltmgrint.h:178
FSRTL_PER_STREAM_CONTEXT ContextCtrl
Definition: fltmgrint.h:171
LIST_ENTRY VolumeLink
Definition: fltmgrint.h:172
CONTEXT_LIST_CTRL StreamHandleContexts
Definition: fltmgrint.h:177
CONTEXT_LIST_CTRL StreamContexts
Definition: fltmgrint.h:176
RTL_SPLAY_LINKS * Tree
Definition: fltmgrint.h:157
UNICODE_STRING Volume
Definition: fltmgrint.h:349
unsigned int Iterator
Definition: fltmgrint.h:350
#define NTAPI
Definition: typedefs.h:36
ULONG_PTR SIZE_T
Definition: typedefs.h:80
uint32_t ULONG
Definition: typedefs.h:59
uint64_t ULONGLONG
Definition: typedefs.h:67
PORT_CCB Port
Definition: fltmgrint.h:368
FILTER_CCB Filter
Definition: fltmgrint.h:365
MANAGER_CCB Manager
Definition: fltmgrint.h:364
INSTANCE_CCB Instance
Definition: fltmgrint.h:366
VOLUME_CCB Volume
Definition: fltmgrint.h:367
_Must_inspect_result_ _In_ WDFCOLLECTION _In_ WDFOBJECT Object
_In_ PDEVICE_OBJECT DeviceObject
Definition: wdfdevice.h:2055
_Must_inspect_result_ _In_ WDFDEVICE _In_ WDFSTRING String
Definition: wdfdevice.h:2433
_Must_inspect_result_ _In_ PDRIVER_OBJECT DriverObject
Definition: wdfdriver.h:213
_In_ PVOID _Out_opt_ PULONG_PTR _Outptr_opt_ PCUNICODE_STRING * ObjectName
Definition: cmfuncs.h:64
FAST_MUTEX
Definition: extypes.h:17
struct LOOKASIDE_ALIGN _NPAGED_LOOKASIDE_LIST NPAGED_LOOKASIDE_LIST