94{
101
103
104
105
106
107
108
111 0,
114 0,
117
120 }
121
122
123
124
125
128 0,
131 0,
134
138 }
139
140#ifdef _MSC_VER
141#pragma prefast( push )
142#pragma prefast( disable:28155, "these are all correct" )
143#pragma prefast( disable:28169, "these are all correct" )
144#pragma prefast( disable:28175, "this is a filesystem, touching FastIoDispatch is allowed" )
145#endif
146
148
149
150
151
152
153
154
155
156
157
158
159
178
180
182
200
201#ifdef _MSC_VER
202#pragma prefast( pop )
203#endif
204
205
206
207
208
211
214
216 &FilterCallbacks );
217
219
223 }
224
225
226
227
228
229
230
231
232
234
237
239
243
244
245
246
247
250
252
257 }
258
259
260
261
262
268 }
270
271
272
273
274
275
276
277
279
281
283
286 break;
287
289
292 break;
293
295 default:
296
299 break;
300 }
301
302
303
304
305
306
311
316
317
318
319
320
322
323
324
325
326
327
328#if (NTDDI_VERSION >= NTDDI_VISTA)
330#else
332#endif
333
334
335
336
337
338
342
344
346
348
349 } else {
350
352 }
353
354
355
356
357
358
362
364
366
368
369 } else {
370
372 }
373
374
375
376
377
379
387
395
403
407
408
409
410
411
416
417
418
419
420
422
423#if (NTDDI_VERSION >= NTDDI_WIN8)
424
425
426
427
428
430
431#endif
432
433
434
435
436
438}
ACPI_PHYSICAL_ADDRESS ACPI_SIZE BOOLEAN Warn UINT32 *TableIdx UINT32 ACPI_TABLE_HEADER *OutTableHeader ACPI_TABLE_HEADER **OutTable ACPI_HANDLE UINT32 MaxDepth
#define NT_SUCCESS(StatCode)
ULONG FatMaxDelayedCloseCount
#define FAT_NTC_DATA_HEADER
#define ExAllocatePoolWithTag(hernya, size, tag)
NTSTATUS ExInitializeResourceLite(PULONG res)
#define KeInitializeEvent(pEvt, foo, foo2)
#define InitializeListHead(ListHead)
#define KeInitializeSpinLock(sl)
NPAGED_LOOKASIDE_LIST FatNonPagedFcbLookasideList
FAST_MUTEX FatCloseQueueMutex
PDEVICE_OBJECT FatDiskFileSystemDeviceObject
SLIST_HEADER FatCloseContextSList
LOGICAL FatDiskAccountingEnabled
NPAGED_LOOKASIDE_LIST FatIrpContextLookasideList
NPAGED_LOOKASIDE_LIST FatEResourceLookasideList
FAST_IO_DISPATCH FatFastIoDispatch
PDEVICE_OBJECT FatCdromFileSystemDeviceObject
#define FAT_MAX_DELAYED_CLOSES
#define CODE_PAGE_INVARIANCE_VALUE_NAME
BOOLEAN FatIsFujitsuFMR()
#define COMPATIBILITY_MODE_VALUE_NAME
NTSTATUS FatGetCompatibilityModeValue(IN PUNICODE_STRING ValueName, IN OUT PULONG Value)
BOOLEAN NTAPI FatNoOpAcquire(IN PVOID Fcb, IN BOOLEAN Wait)
VOID NTAPI FatNoOpRelease(IN PVOID Fcb)
struct _FAT_DATA FAT_DATA
PIO_WORKITEM NTAPI IoAllocateWorkItem(IN PDEVICE_OBJECT DeviceObject)
NTKRNLVISTAAPI ULONG NTAPI KeQueryActiveProcessorCount(OUT PKAFFINITY ActiveProcessors OPTIONAL)
VOID NTAPI ExInitializeNPagedLookasideList(IN PNPAGED_LOOKASIDE_LIST Lookaside, IN PALLOCATE_FUNCTION Allocate OPTIONAL, IN PFREE_FUNCTION Free OPTIONAL, IN ULONG Flags, IN SIZE_T Size, IN ULONG Tag, IN USHORT Depth)
MM_SYSTEMSIZE NTAPI MmQuerySystemSize(VOID)
NTSYSAPI VOID NTAPI RtlInitUnicodeString(PUNICODE_STRING DestinationString, PCWSTR SourceString)
#define UNREFERENCED_PARAMETER(P)
BOOLEAN NTAPI FsRtlMdlWriteCompleteDev(IN PFILE_OBJECT FileObject, IN PLARGE_INTEGER FileOffset, IN PMDL MdlChain, IN PDEVICE_OBJECT DeviceObject)
BOOLEAN NTAPI FsRtlMdlReadCompleteDev(IN PFILE_OBJECT FileObject, IN PMDL MemoryDescriptorList, IN PDEVICE_OBJECT DeviceObject)
BOOLEAN NTAPI FsRtlCopyRead(IN PFILE_OBJECT FileObject, IN PLARGE_INTEGER FileOffset, IN ULONG Length, IN BOOLEAN Wait, IN ULONG LockKey, OUT PVOID Buffer, OUT PIO_STATUS_BLOCK IoStatus, IN PDEVICE_OBJECT DeviceObject)
BOOLEAN NTAPI FsRtlCopyWrite(IN PFILE_OBJECT FileObject, IN PLARGE_INTEGER FileOffset, IN ULONG Length, IN BOOLEAN Wait, IN ULONG LockKey, OUT PVOID Buffer, OUT PIO_STATUS_BLOCK IoStatus, IN PDEVICE_OBJECT DeviceObject)
BOOLEAN NTAPI FsRtlPrepareMdlWriteDev(IN PFILE_OBJECT FileObject, IN PLARGE_INTEGER FileOffset, IN ULONG Length, IN ULONG LockKey, OUT PMDL *MdlChain, OUT PIO_STATUS_BLOCK IoStatus, IN PDEVICE_OBJECT DeviceObject)
NTSTATUS NTAPI FsRtlRegisterFileSystemFilterCallbacks(PDRIVER_OBJECT FilterDriverObject, PFS_FILTER_CALLBACKS Callbacks)
BOOLEAN NTAPI FsRtlMdlReadDev(IN PFILE_OBJECT FileObject, IN PLARGE_INTEGER FileOffset, IN ULONG Length, IN ULONG LockKey, OUT PMDL *MdlChain, OUT PIO_STATUS_BLOCK IoStatus, IN PDEVICE_OBJECT DeviceObject)
NTSTATUS NTAPI IoCreateDevice(IN PDRIVER_OBJECT DriverObject, IN ULONG DeviceExtensionSize, IN PUNICODE_STRING DeviceName, IN DEVICE_TYPE DeviceType, IN ULONG DeviceCharacteristics, IN BOOLEAN Exclusive, OUT PDEVICE_OBJECT *DeviceObject)
VOID NTAPI IoDeleteDevice(IN PDEVICE_OBJECT DeviceObject)
VOID NTAPI IoRegisterFileSystem(IN PDEVICE_OBJECT DeviceObject)
#define FILE_DEVICE_DISK_FILE_SYSTEM
#define FILE_DEVICE_CD_ROM_FILE_SYSTEM
#define IRP_MJ_DIRECTORY_CONTROL
#define IRP_MJ_DEVICE_CONTROL
#define IRP_MJ_QUERY_VOLUME_INFORMATION
#define IRP_MJ_LOCK_CONTROL
#define IRP_MJ_SET_INFORMATION
#define IRP_MJ_QUERY_INFORMATION
PACQUIRE_FOR_LAZY_WRITE AcquireForLazyWrite
PRELEASE_FROM_LAZY_WRITE ReleaseFromLazyWrite
PACQUIRE_FOR_READ_AHEAD AcquireForReadAhead
PRELEASE_FROM_READ_AHEAD ReleaseFromReadAhead
PFAST_IO_QUERY_STANDARD_INFO FastIoQueryStandardInfo
PFAST_IO_UNLOCK_ALL_BY_KEY FastIoUnlockAllByKey
PFAST_IO_RELEASE_FOR_CCFLUSH ReleaseForCcFlush
PFAST_IO_MDL_READ_COMPLETE MdlReadComplete
PFAST_IO_MDL_READ MdlRead
PFAST_IO_WRITE FastIoWrite
PFAST_IO_UNLOCK_ALL FastIoUnlockAll
PFAST_IO_QUERY_NETWORK_OPEN_INFO FastIoQueryNetworkOpenInfo
PFAST_IO_ACQUIRE_FOR_CCFLUSH AcquireForCcFlush
PFAST_IO_MDL_WRITE_COMPLETE MdlWriteComplete
ULONG SizeOfFastIoDispatch
PFAST_IO_QUERY_BASIC_INFO FastIoQueryBasicInfo
PFAST_IO_UNLOCK_SINGLE FastIoUnlockSingle
PFAST_IO_PREPARE_MDL_WRITE PrepareMdlWrite
PFAST_IO_CHECK_IF_POSSIBLE FastIoCheckIfPossible
PVOID DiskFileSystemDeviceObject
CACHE_MANAGER_CALLBACKS CacheManagerNoOpCallbacks
PDRIVER_OBJECT DriverObject
KSPIN_LOCK GeneralSpinLock
NODE_TYPE_CODE NodeTypeCode
NODE_BYTE_SIZE NodeByteSize
BOOLEAN CodePageInvariant
LIST_ENTRY AsyncCloseList
CACHE_MANAGER_CALLBACKS CacheManagerCallbacks
PVOID CdromFileSystemDeviceObject
PIO_WORKITEM FatCloseItem
LIST_ENTRY DelayedCloseList
ULONG SizeOfFsFilterCallbacks
PFS_FILTER_CALLBACK PreAcquireForSectionSynchronization
#define RtlZeroMemory(Destination, Length)
#define STATUS_INSUFFICIENT_RESOURCES
_Must_inspect_result_ _In_ PDRIVER_OBJECT _In_ PCUNICODE_STRING RegistryPath
_Must_inspect_result_ _In_ PDRIVER_OBJECT DriverObject
_Must_inspect_result_ _In_ WDFKEY _In_ PCUNICODE_STRING ValueName
_Must_inspect_result_ _In_ WDFKEY _In_ PCUNICODE_STRING _Out_opt_ PUSHORT _Inout_opt_ PUNICODE_STRING Value
FORCEINLINE VOID ExInitializeFastMutex(_Out_ PFAST_MUTEX FastMutex)
#define ExInitializeSListHead
#define IRP_MJ_FILE_SYSTEM_CONTROL
#define IRP_MJ_SET_VOLUME_INFORMATION
#define POOL_NX_ALLOCATION
DRIVER_DISPATCH * PDRIVER_DISPATCH
struct _FS_FILTER_CALLBACKS FS_FILTER_CALLBACKS
struct _FAST_IO_DISPATCH FAST_IO_DISPATCH
#define IRP_MJ_FLUSH_BUFFERS
#define POOL_RAISE_IF_ALLOCATION_FAILURE
#define ObReferenceObject
#define PsGetCurrentProcess