4 #define FsRtlEnterFileSystem KeEnterCriticalRegion 5 #define FsRtlExitFileSystem KeLeaveCriticalRegion 7 #if (NTDDI_VERSION >= NTDDI_WIN2K) 872 #if (NTDDI_VERSION >= NTDDI_WINXP) 950 #if (NTDDI_VERSION >= NTDDI_WS03) 1062 #if (NTDDI_VERSION >= NTDDI_VISTA) 1068 FsRtlInitializeBaseMcbEx(
1077 FsRtlAddBaseMcbEntryEx(
1108 FsRtlNotifyVolumeEventEx(
1117 FsRtlNotifyCleanupAll(
1125 FsRtlRegisterUncProviderEx(
1137 FsRtlCancellableWaitForSingleObject(
1148 FsRtlCancellableWaitForMultipleObjects(
1161 FsRtlMupGetProviderInfoFromFileObject(
1172 FsRtlMupGetProviderIdFromName(
1205 FsRtlAllocateExtraCreateParameterList(
1213 FsRtlFreeExtraCreateParameterList(
1221 FsRtlAllocateExtraCreateParameter(
1233 FsRtlFreeExtraCreateParameter(
1241 FsRtlInitExtraCreateParameterLookasideList(
1251 FsRtlDeleteExtraCreateParameterLookasideList(
1260 FsRtlAllocateExtraCreateParameterFromLookasideList(
1273 FsRtlInsertExtraCreateParameter(
1282 FsRtlFindExtraCreateParameter(
1293 FsRtlRemoveExtraCreateParameter(
1313 FsRtlSetEcpListIntoIrp(
1333 FsRtlAcknowledgeEcp(
1340 FsRtlIsEcpAcknowledged(
1347 FsRtlIsEcpFromUserMode(
1355 FsRtlChangeBackingFileObject(
1366 FsRtlLogCcFlushError(
1377 FsRtlAreVolumeStartupApplicationsComplete(
VOID);
1394 #if (NTDDI_VERSION >= NTDDI_VISTASP1) 1410 #if (NTDDI_VERSION >= NTDDI_WIN7) 1416 FsRtlAreThereCurrentOrInProgressFileLocks(
1424 FsRtlOplockIsSharedRequest(
1444 FsRtlCurrentOplockH(
1452 FsRtlOplockBreakToNoneEx(
1465 FsRtlOplockFsctrlEx(
1475 FsRtlOplockKeysEqual(
1503 FsRtlInsertPerFileContext(
1512 FsRtlLookupPerFileContext(
1522 FsRtlRemovePerFileContext(
1531 FsRtlTeardownPerFileContexts(
1570 #if (NTDDI_VERSION >= NTDDI_VISTA) 1575 _In_ struct _FILE_OBJECT * StreamFileObject,
1581 #define FsRtlFastLock(A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11) \ 1582 FsRtlPrivateLock(A1, A2, A3, A4, A5, A6, A7, A8, A9, NULL, A10, A11) 1584 #define FsRtlAreThereCurrentFileLocks(FL) \ 1585 ((FL)->FastIoIsQuestionable) 1587 #define FsRtlIncrementLockRequestsInProgress(FL) { \ 1588 ASSERT((FL)->LockRequestsInProgress >= 0); \ 1590 (InterlockedIncrement((LONG volatile *)&((FL)->LockRequestsInProgress))); \ 1593 #define FsRtlDecrementLockRequestsInProgress(FL) { \ 1594 ASSERT((FL)->LockRequestsInProgress > 0); \ 1596 (InterlockedDecrement((LONG volatile *)&((FL)->LockRequestsInProgress))); \ 1601 #define LEGAL_ANSI_CHARACTER_ARRAY FsRtlLegalAnsiCharacterArray 1605 #define LEGAL_ANSI_CHARACTER_ARRAY (*FsRtlLegalAnsiCharacterArray) 1608 #define FsRtlIsAnsiCharacterWild(C) \ 1609 FsRtlTestAnsiCharacter((C), FALSE, FALSE, FSRTL_WILD_CHARACTER) 1611 #define FsRtlIsAnsiCharacterLegalFat(C, WILD) \ 1612 FsRtlTestAnsiCharacter((C), TRUE, (WILD), FSRTL_FAT_LEGAL) 1614 #define FsRtlIsAnsiCharacterLegalHpfs(C, WILD) \ 1615 FsRtlTestAnsiCharacter((C), TRUE, (WILD), FSRTL_HPFS_LEGAL) 1617 #define FsRtlIsAnsiCharacterLegalNtfs(C, WILD) \ 1618 FsRtlTestAnsiCharacter((C), TRUE, (WILD), FSRTL_NTFS_LEGAL) 1620 #define FsRtlIsAnsiCharacterLegalNtfsStream(C,WILD_OK) \ 1621 FsRtlTestAnsiCharacter((C), TRUE, (WILD_OK), FSRTL_NTFS_STREAM_LEGAL) 1623 #define FsRtlIsAnsiCharacterLegal(C,FLAGS) \ 1624 FsRtlTestAnsiCharacter((C), TRUE, FALSE, (FLAGS)) 1626 #define FsRtlTestAnsiCharacter(C, DEFAULT_RET, WILD_OK, FLAGS) \ 1627 (((SCHAR)(C) < 0) ? DEFAULT_RET : \ 1628 FlagOn(LEGAL_ANSI_CHARACTER_ARRAY[(C)], \ 1629 (FLAGS) | ((WILD_OK) ? FSRTL_WILD_CHARACTER : 0))) 1631 #define FsRtlIsLeadDbcsCharacter(DBCS_CHAR) \ 1632 ((BOOLEAN)((UCHAR)(DBCS_CHAR) < 0x80 ? FALSE : \ 1633 (NLS_MB_CODE_PAGE_TAG && \ 1634 (NLS_OEM_LEAD_BYTE_INFO[(UCHAR)(DBCS_CHAR)] != 0)))) 1636 #define FsRtlIsUnicodeCharacterWild(C) \ 1637 ((((C) >= 0x40) ? FALSE : \ 1638 FlagOn(LEGAL_ANSI_CHARACTER_ARRAY[(C)], FSRTL_WILD_CHARACTER ))) 1640 #define FsRtlInitPerFileContext(_fc, _owner, _inst, _cb) \ 1641 ((_fc)->OwnerId = (_owner), \ 1642 (_fc)->InstanceId = (_inst), \ 1643 (_fc)->FreeCallback = (_cb)) 1645 #define FsRtlGetPerFileContextPointer(_fo) \ 1646 (FsRtlSupportsPerFileContexts(_fo) ? \ 1647 FsRtlGetPerStreamContextPointer(_fo)->FileContextSupportPointer : NULL) 1649 #define FsRtlSupportsPerFileContexts(_fo) \ 1650 ((FsRtlGetPerStreamContextPointer(_fo) != NULL) && \ 1651 (FsRtlGetPerStreamContextPointer(_fo)->Version >= FSRTL_FCB_HEADER_V1) && \ 1652 (FsRtlGetPerStreamContextPointer(_fo)->FileContextSupportPointer != NULL)) 1654 #define FsRtlSetupAdvancedHeaderEx(_advhdr, _fmutx, _fctxptr) \ 1656 FsRtlSetupAdvancedHeader( _advhdr, _fmutx ); \ 1657 if ((_fctxptr) != NULL) { \ 1658 (_advhdr)->FileContextSupportPointer = (_fctxptr); \ 1662 #define FsRtlGetPerStreamContextPointer(FO) \ 1663 ((PFSRTL_ADVANCED_FCB_HEADER)(FO)->FsContext) 1665 #define FsRtlInitPerStreamContext(PSC, O, I, FC) \ 1666 ((PSC)->OwnerId = (O), \ 1667 (PSC)->InstanceId = (I), \ 1668 (PSC)->FreeCallback = (FC)) 1670 #define FsRtlSupportsPerStreamContexts(FO) \ 1671 ((BOOLEAN)((NULL != FsRtlGetPerStreamContextPointer(FO) && \ 1672 FlagOn(FsRtlGetPerStreamContextPointer(FO)->Flags2, \ 1673 FSRTL_FLAG2_SUPPORTS_FILTER_CONTEXTS))) 1675 #define FsRtlLookupPerStreamContext(_sc, _oid, _iid) \ 1676 (((NULL != (_sc)) && \ 1677 FlagOn((_sc)->Flags2,FSRTL_FLAG2_SUPPORTS_FILTER_CONTEXTS) && \ 1678 !IsListEmpty(&(_sc)->FilterContexts)) ? \ 1679 FsRtlLookupPerStreamContextInternal((_sc), (_oid), (_iid)) : NULL) 1685 FsRtlSetupAdvancedHeader(
1693 #if (NTDDI_VERSION >= NTDDI_VISTA) 1702 #if (NTDDI_VERSION >= NTDDI_VISTA) 1708 #define FsRtlInitPerFileObjectContext(_fc, _owner, _inst) \ 1709 ((_fc)->OwnerId = (_owner), (_fc)->InstanceId = (_inst)) 1711 #define FsRtlCompleteRequest(IRP, STATUS) { \ 1712 (IRP)->IoStatus.Status = (STATUS); \ 1713 IoCompleteRequest( (IRP), IO_DISK_INCREMENT ); \
_Must_inspect_result_ _Outptr_ PVOID * SectionObject
_Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) NTKERNELAPI BOOLEAN NTAPI FsRtlCopyWrite(_In_ PFILE_OBJECT FileObject
Queries information details about a security descriptor.
NTKERNELAPI VOID NTAPI FsRtlIncrementCcFastReadWait(VOID)
_Must_inspect_result_ Obsolete NTKERNELAPI BOOLEAN NTAPI FsRtlPrivateLock(_In_ PFILE_LOCK FileLock, _In_ PFILE_OBJECT FileObject, _In_ PLARGE_INTEGER FileOffset, _In_ PLARGE_INTEGER Length, _In_ PEPROCESS Process, _In_ ULONG Key, _In_ BOOLEAN FailImmediately, _In_ BOOLEAN ExclusiveLock, _Out_ PIO_STATUS_BLOCK IoStatus, _In_opt_ PIRP Irp, _In_opt_ __drv_aliasesMem PVOID Context, _In_ BOOLEAN AlreadySynchronized)
_Must_inspect_result_ _In_ WDFDEVICE _In_ DEVICE_REGISTRY_PROPERTY _In_ ULONG BufferLength
ULONG FSRTL_ALLOCATE_ECPLIST_FLAGS
_Must_inspect_result_ _In_ LONGLONG _In_ LONGLONG Amount
_Must_inspect_result_ _In_ WDFDEVICE _In_ ULONG _In_ ACCESS_MASK DesiredAccess
_Must_inspect_result_ _In_opt_ PLARGE_INTEGER Timeout
#define __CREATE_NTOS_DATA_IMPORT_ALIAS(_Name)
NTKERNELAPI NTSTATUS NTAPI FsRtlRegisterFileSystemFilterCallbacks(_In_ struct _DRIVER_OBJECT *FilterDriverObject, _In_ PFS_FILTER_CALLBACKS Callbacks)
BOOLEAN NTAPI FsRtlFastCheckLockForRead(IN PFILE_LOCK FileLock, IN PLARGE_INTEGER FileOffset, IN PLARGE_INTEGER Length, IN ULONG Key, IN PFILE_OBJECT FileObject, IN PVOID Process)
_Must_inspect_result_ _In_ PFILE_OBJECT _In_ FSRTL_CHANGE_BACKING_TYPE ChangeBackingType
_In_ ULONG _In_ ULONG _In_ ULONG Length
BOOLEAN NTAPI FsRtlLookupLastBaseMcbEntry(IN PBASE_MCB OpaqueMcb, OUT PLONGLONG Vbn, OUT PLONGLONG Lbn)
NTKERNELAPI NTSTATUS NTAPI FsRtlInitializeExtraCreateParameterList(_Inout_ PECP_LIST EcpList)
_Must_inspect_result_ _Outptr_ PECP_LIST * EcpList
_Must_inspect_result_ _In_ LPCGUID _Outptr_opt_ PVOID _Out_opt_ ULONG * EcpContextSize
_Must_inspect_result_ _In_opt_ PWDF_OBJECT_ATTRIBUTES _In_ _In_ _Strict_type_match_ POOL_TYPE _In_opt_ PWDF_OBJECT_ATTRIBUTES _In_opt_ ULONG _Out_ WDFLOOKASIDE * Lookaside
_In_ PLARGE_INTEGER _In_ ULONG _In_ BOOLEAN _In_ ULONG LockKey
_In_ PLIST_ENTRY _In_ PSTRING _In_ USHORT _In_opt_ PSTRING _In_opt_ PSTRING _In_ ULONG _In_ ULONG _In_opt_ PVOID _In_opt_ PVOID FilterContext
VOID NTAPI FsRtlTruncateMcb(IN PMCB Mcb, IN VBN Vbn)
_Must_inspect_result_ _In_ BOOLEAN _In_ BOOLEAN _In_ BOOLEAN LeadingBackslashPermissible
#define FSRTL_FCB_HEADER_V0
_Must_inspect_result_ _In_ ULONG SizeOfContext
_In_ BOOLEAN SelfSynchronized
NTKERNELAPI VOID NTAPI FsRtlIncrementCcFastReadResourceMiss(VOID)
_Must_inspect_result_ __drv_aliasesMem PDEVICE_OBJECT _In_ PDEVICE_OBJECT TargetDevice
BOOLEAN NTAPI FsRtlMdlReadCompleteDev(IN PFILE_OBJECT FileObject, IN PMDL MemoryDescriptorList, IN PDEVICE_OBJECT DeviceObject)
VOID NTAPI FsRtlInitializeFileLock(IN PFILE_LOCK FileLock, IN PCOMPLETE_LOCK_IRP_ROUTINE CompleteLockIrpRoutine OPTIONAL, IN PUNLOCK_ROUTINE UnlockRoutine OPTIONAL)
VOID NTAPI FsRtlNotifyFullChangeDirectory(IN PNOTIFY_SYNC NotifySync, IN PLIST_ENTRY NotifyList, IN PVOID FsContext, IN PSTRING FullDirectoryName, IN BOOLEAN WatchTree, IN BOOLEAN IgnoreBuffer, IN ULONG CompletionFilter, IN PIRP NotifyIrp, IN PCHECK_FOR_TRAVERSE_ACCESS TraverseCallback OPTIONAL, IN PSECURITY_SUBJECT_CONTEXT SubjectContext OPTIONAL)
_Must_inspect_result_ _In_ USHORT PathLength
_In_ PLIST_ENTRY NotifyList
NTKERNELAPI NTSTATUS NTAPI FsRtlNormalizeNtstatus(_In_ NTSTATUS Exception, _In_ NTSTATUS GenericException)
BOOLEAN NTAPI FsRtlMdlWriteCompleteDev(IN PFILE_OBJECT FileObject, IN PLARGE_INTEGER FileOffset, IN PMDL MdlChain, IN PDEVICE_OBJECT DeviceObject)
VOID NTAPI FsRtlUninitializeFileLock(IN PFILE_LOCK FileLock)
_In_ WDFDPC _In_ BOOLEAN Wait
BOOLEAN NTAPI FsRtlCheckLockForWriteAccess(IN PFILE_LOCK FileLock, IN PIRP Irp)
VOID NTAPI FsRtlRemoveLargeMcbEntry(IN PLARGE_MCB Mcb, IN LONGLONG Vbn, IN LONGLONG SectorCount)
_Must_inspect_result_ _In_ PLARGE_INTEGER _In_ ULONG _In_ ULONG _Outptr_ PMDL * MdlChain
_Must_inspect_result_ _Outptr_ PVOID _Out_opt_ PLARGE_INTEGER _In_ PFILE_OBJECT _In_ ACCESS_MASK _In_opt_ POBJECT_ATTRIBUTES _In_opt_ PLARGE_INTEGER MaximumSize
_Must_inspect_result_ _In_ PFSRTL_PER_STREAM_CONTEXT Ptr
_In_ PFILE_OBJECT _In_ PLARGE_INTEGER _In_ PLARGE_INTEGER _In_ PEPROCESS _In_ ULONG _In_opt_ PVOID _In_ BOOLEAN AlreadySynchronized
ULONG FSRTL_ECP_LOOKASIDE_FLAGS
NTKERNELAPI VOID NTAPI FsRtlInitializeExtraCreateParameter(_Out_ PECP_HEADER Ecp, _In_ ULONG EcpFlags, _In_opt_ PFSRTL_EXTRA_CREATE_PARAMETER_CLEANUP_CALLBACK CleanupCallback, _In_ ULONG TotalSize, _In_ LPCGUID EcpType, _In_opt_ PVOID ListAllocatedFrom)
_Must_inspect_result_ _In_opt_ PVOID _Out_opt_ LPGUID _Outptr_opt_ PVOID * NextEcpContext
VOID NTAPI FsRtlNotifyFilterReportChange(IN PNOTIFY_SYNC NotifySync, IN PLIST_ENTRY NotifyList, IN PSTRING FullTargetName, IN USHORT TargetNameOffset, IN PSTRING StreamName OPTIONAL, IN PSTRING NormalizedParentName OPTIONAL, IN ULONG FilterMatch, IN ULONG Action, IN PVOID TargetContext, IN PVOID FilterContext)
PFILE_LOCK NTAPI FsRtlAllocateFileLock(IN PCOMPLETE_LOCK_IRP_ROUTINE CompleteLockIrpRoutine OPTIONAL, IN PUNLOCK_ROUTINE UnlockRoutine OPTIONAL)
BOOLEAN NTAPI FsRtlSplitBaseMcb(IN PBASE_MCB OpaqueMcb, IN LONGLONG Vbn, IN LONGLONG Amount)
_In_ LONGLONG _Out_opt_ PLONGLONG _Out_opt_ PLONGLONG SectorCountFromLbn
VOID NTAPI FsRtlPostPagingFileStackOverflow(IN PVOID Context, IN PKEVENT Event, IN PFSRTL_STACK_OVERFLOW_ROUTINE StackOverflowRoutine)
_Must_inspect_result_ _In_ LONGLONG _In_ LONGLONG Lbn
_In_ PLIST_ENTRY _In_ PSTRING _In_ USHORT _In_opt_ PSTRING _In_opt_ PSTRING NormalizedParentName
_Must_inspect_result_ _In_ ULONG _Out_writes_bytes_ pBufferSize PVOID _Inout_ PULONG pBufferSize
VOID NTAPI FsRtlDeleteKeyFromTunnelCache(IN PTUNNEL Cache, IN ULONGLONG DirectoryKey)
NTSTATUS ExInitializeResourceLite(PULONG res)
_Must_inspect_result_ _Outptr_ PVOID _Out_opt_ PLARGE_INTEGER _In_ PFILE_OBJECT _In_ ACCESS_MASK _In_opt_ POBJECT_ATTRIBUTES _In_opt_ PLARGE_INTEGER _In_ ULONG _In_ ULONG AllocationAttributes
_Must_inspect_result_ _In_ USHORT _Out_ USHORT * NewLength
IN PVOID IN PVOID IN USHORT IN USHORT Size
_Must_inspect_result_ _Out_ PULONG32 pProviderId
_Out_ PANSI_STRING _Out_ PANSI_STRING RemainingPart
_Must_inspect_result_ _In_opt_ PIO_STACK_LOCATION IrpSp
_In_ ULONGLONG _In_ PUNICODE_STRING _In_ PUNICODE_STRING _In_ BOOLEAN _In_ ULONG DataLength
VOID NTAPI FsRtlNotifyFullReportChange(IN PNOTIFY_SYNC NotifySync, IN PLIST_ENTRY NotifyList, IN PSTRING FullTargetName, IN USHORT TargetNameOffset, IN PSTRING StreamName OPTIONAL, IN PSTRING NormalizedParentName OPTIONAL, IN ULONG FilterMatch, IN ULONG Action, IN PVOID TargetContext)
BOOLEAN(NTAPI * PFILTER_REPORT_CHANGE)(_In_ PVOID NotifyContext, _In_ PVOID FilterContext)
NTSTATUS NTAPI FsRtlGetFileSize(IN PFILE_OBJECT FileObject, IN OUT PLARGE_INTEGER FileSize)
VOID NTAPI FsRtlUninitializeOplock(IN POPLOCK Oplock)
VOID NTAPI FsRtlAcquireFileExclusive(IN PFILE_OBJECT FileObject)
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)
#define FSRTL_ECP_LOOKASIDE_FLAG_NONPAGED_POOL
VOID NTAPI FsRtlReleaseFile(IN PFILE_OBJECT FileObject)
_Must_inspect_result_ _In_ PFILE_OBJECT NewFileObject
NTSTATUS NTAPI FsRtlInsertPerFileObjectContext(IN PFILE_OBJECT FileObject, IN PFSRTL_PER_FILEOBJECT_CONTEXT Ptr)
_In_ PLIST_ENTRY _In_ PVOID _In_ PSTRING _In_ BOOLEAN _In_ BOOLEAN _In_ ULONG _In_opt_ PIRP _In_opt_ PCHECK_FOR_TRAVERSE_ACCESS TraverseCallback
ULONG NTAPI FsRtlNumberOfRunsInLargeMcb(IN PLARGE_MCB Mcb)
BOOLEAN NTAPI FsRtlDoesNameContainWildCards(IN PUNICODE_STRING Name)
BOOLEAN NTAPI FsRtlDoesDbcsContainWildCards(IN PANSI_STRING Name)
BOOLEAN NTAPI FsRtlIsHpfsDbcsLegal(IN ANSI_STRING DbcsName, IN BOOLEAN WildCardsPermissible, IN BOOLEAN PathNamePermissible, IN BOOLEAN LeadingBackslashPermissible)
_Must_inspect_result_ _In_ BOOLEAN _In_ BOOLEAN PathNamePermissible
NTKERNELAPI VOID NTAPI FsRtlIncrementCcFastReadNoWait(VOID)
BOOLEAN NTAPI FsRtlIsNameInExpression(IN PUNICODE_STRING Expression, IN PUNICODE_STRING Name, IN BOOLEAN IgnoreCase, IN PWCHAR UpcaseTable OPTIONAL)
VOID NTAPI FsRtlTruncateLargeMcb(IN PLARGE_MCB Mcb, IN LONGLONG Vbn)
_Must_inspect_result_ _In_ PDEVICE_OBJECT _In_ PSECTION_OBJECT_POINTERS SectionObjectPointer
_Must_inspect_result_ _In_ ULONG RunIndex
Obsolete NTKERNELAPI VOID NTAPI FsRtlInitializeMcb(_Out_ PMCB Mcb, _In_ POOL_TYPE PoolType)
_In_ PLIST_ENTRY _In_ PSTRING FullTargetName
BOOLEAN NTAPI FsRtlLookupBaseMcbEntry(IN PBASE_MCB OpaqueMcb, IN LONGLONG Vbn, OUT PLONGLONG Lbn OPTIONAL, OUT PLONGLONG SectorCountFromLbn OPTIONAL, OUT PLONGLONG StartingLbn OPTIONAL, OUT PLONGLONG SectorCountFromStartingLbn OPTIONAL, OUT PULONG Index OPTIONAL)
VOID NTAPI FsRtlNotifyCleanup(IN PNOTIFY_SYNC NotifySync, IN PLIST_ENTRY NotifyList, IN PVOID FsContext)
BOOLEAN NTAPI FsRtlGetNextLargeMcbEntry(IN PLARGE_MCB Mcb, IN ULONG RunIndex, OUT PLONGLONG Vbn, OUT PLONGLONG Lbn, OUT PLONGLONG SectorCount)
_In_ WDF_SPECIAL_FILE_TYPE NotificationType
__GNU_EXTENSION typedef __int64 * PLONGLONG
NTSTATUS NTAPI FsRtlFastUnlockAllByKey(IN PFILE_LOCK FileLock, IN PFILE_OBJECT FileObject, IN PEPROCESS Process, IN ULONG Key, IN PVOID Context OPTIONAL)
NTSTATUS NTAPI FsRtlOplockFsctrl(IN POPLOCK Oplock, IN PIRP Irp, IN ULONG OpenCount)
_In_ PLIST_ENTRY _In_ PVOID _In_ PSTRING _In_ BOOLEAN _In_ BOOLEAN _In_ ULONG _In_opt_ PIRP NotifyIrp
_Must_inspect_result_ NTKERNELAPI BOOLEAN NTAPI FsRtlIsTotalDeviceFailure(_In_ NTSTATUS Status)
_Must_inspect_result_ _Outptr_ PVOID _Out_opt_ PLARGE_INTEGER SectionFileSize
_In_ PDEVICE_OBJECT DeviceObject
VOID NTAPI FsRtlInitializeBaseMcb(IN PBASE_MCB OpaqueMcb, IN POOL_TYPE PoolType)
_Must_inspect_result_ _In_ PLARGE_INTEGER _In_ ULONG _In_ BOOLEAN _In_ ULONG _In_reads_bytes_(Length) PVOID Buffer
_Must_inspect_result_ _In_ PIRP _In_ ULONG OpenCount
NTSTATUS(* NTAPI)(IN PFILE_FULL_EA_INFORMATION EaBuffer, IN ULONG EaLength, OUT PULONG ErrorOffset)
NTSTATUS NTAPI FsRtlFastUnlockSingle(IN PFILE_LOCK FileLock, IN PFILE_OBJECT FileObject, IN PLARGE_INTEGER FileOffset, IN PLARGE_INTEGER Length, IN PEPROCESS Process, IN ULONG Key, IN PVOID Context OPTIONAL, IN BOOLEAN AlreadySynchronized)
struct _FSRTL_ADVANCED_FCB_HEADER * PFSRTL_ADVANCED_FCB_HEADER
_Must_inspect_result_ _In_reads_(Count) PVOID ObjectArray[]
VOID NTAPI FsRtlAddToTunnelCache(IN PTUNNEL Cache, IN ULONGLONG DirectoryKey, IN PUNICODE_STRING ShortName, IN PUNICODE_STRING LongName, IN BOOLEAN KeyByShortName, IN ULONG DataLength, IN PVOID Data)
BOOLEAN(NTAPI * PCHECK_FOR_TRAVERSE_ACCESS)(_In_ PVOID NotifyContext, _In_opt_ PVOID TargetContext, _In_ PSECURITY_SUBJECT_CONTEXT SubjectContext)
_Must_inspect_result_ _Outptr_ PVOID _Out_opt_ PLARGE_INTEGER _In_ PFILE_OBJECT _In_ ACCESS_MASK _In_opt_ POBJECT_ATTRIBUTES _In_opt_ PLARGE_INTEGER _In_ ULONG SectionPageProtection
BOOLEAN NTAPI FsRtlFindInTunnelCache(IN PTUNNEL Cache, IN ULONGLONG DirectoryKey, IN PUNICODE_STRING Name, OUT PUNICODE_STRING ShortName, OUT PUNICODE_STRING LongName, IN OUT PULONG DataLength, OUT PVOID Data)
#define _Out_writes_bytes_to_(size, count)
#define MCB_FLAG_RAISE_ON_ALLOCATION_FAILURE
IN PLARGE_INTEGER IN PLARGE_INTEGER PEPROCESS ULONG BOOLEAN FailImmediately
BOOLEAN NTAPI FsRtlGetNextMcbEntry(IN PMCB Mcb, IN ULONG RunIndex, OUT PVBN Vbn, OUT PLBN Lbn, OUT PULONG SectorCount)
_Must_inspect_result_ _In_ BOOLEAN WildCardsPermissible
_Must_inspect_result_ _In_opt_ PVOID _In_opt_ PVOID InstanceId
NTKERNELAPI NTSTATUS NTAPI FsRtlValidateReparsePointBuffer(IN ULONG BufferLength, IN PREPARSE_DATA_BUFFER ReparseBuffer)
_Must_inspect_result_ _In_ ULONG _In_ FSRTL_ALLOCATE_ECP_FLAGS _In_opt_ PFSRTL_EXTRA_CREATE_PARAMETER_CLEANUP_CALLBACK CleanupCallback
VOID(NTAPI * POPLOCK_WAIT_COMPLETE_ROUTINE)(_In_ PVOID Context, _In_ PIRP Irp)
VOID NTAPI FsRtlUninitializeMcb(IN PMCB Mcb)
VOID NTAPI FsRtlInitializeLargeMcb(IN PLARGE_MCB Mcb, IN POOL_TYPE PoolType)
_In_ PLARGE_INTEGER FileOffset
LOGICAL NTAPI FsRtlIsPagingFile(IN PFILE_OBJECT FileObject)
BOOLEAN NTAPI FsRtlLookupLastLargeMcbEntry(IN PLARGE_MCB Mcb, OUT PLONGLONG Vbn, OUT PLONGLONG Lbn)
#define __drv_preferredFunction(func, why)
enum _FS_FILTER_STREAM_FO_NOTIFICATION_TYPE FS_FILTER_STREAM_FO_NOTIFICATION_TYPE
VOID NTAPI FsRtlDissectDbcs(IN ANSI_STRING Name, OUT PANSI_STRING FirstPart, OUT PANSI_STRING RemainingPart)
_Must_inspect_result_ ULONG _In_ FSRTL_ALLOCATE_ECP_FLAGS _In_opt_ PFSRTL_EXTRA_CREATE_PARAMETER_CLEANUP_CALLBACK _Inout_ PVOID LookasideList
VOID NTAPI FsRtlUninitializeBaseMcb(IN PBASE_MCB Mcb)
_In_ PLIST_ENTRY _In_ PVOID _In_ PSTRING _In_ BOOLEAN _In_ BOOLEAN IgnoreBuffer
BOOLEAN NTAPI FsRtlIsDbcsInExpression(IN PANSI_STRING Expression, IN PANSI_STRING Name)
$endif(_WDMDDK_) $if(_NTDDK_) typedef struct _NEON128
#define _Inout_updates_bytes_(size)
_Must_inspect_result_ _In_ PCUNICODE_STRING _In_ BOOLEAN IgnoreCase
const UCHAR *const * FsRtlLegalAnsiCharacterArray
BOOLEAN NTAPI FsRtlLookupMcbEntry(IN PMCB Mcb, IN VBN Vbn, OUT PLBN Lbn, OUT PULONG SectorCount OPTIONAL, OUT PULONG Index)
_Must_inspect_result_ _In_ PCUNICODE_STRING _In_ BOOLEAN _In_reads_opt_(0x10000) PCWCH UpcaseTable)
_In_ WDFREQUEST _In_ WDFFILEOBJECT FileObject
_In_ ULONGLONG _In_ PUNICODE_STRING _In_ PUNICODE_STRING _In_ BOOLEAN KeyByShortName
_In_ LONGLONG _Out_opt_ PLONGLONG _Out_opt_ PLONGLONG _Out_opt_ PLONGLONG StartingLbn
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)
NTKERNELAPI NTSTATUS NTAPI FsRtlGetVirtualDiskNestingLevel(_In_ PDEVICE_OBJECT DeviceObject, _Out_ PULONG NestingLevel, _Out_opt_ PULONG NestingFlags)
PFILE_LOCK_INFO NTAPI FsRtlGetNextFileLock(IN PFILE_LOCK FileLock, IN BOOLEAN Restart)
_In_ PLIST_ENTRY _In_ PSTRING _In_ USHORT _In_opt_ PSTRING StreamName
VOID(NTAPI * PUNLOCK_ROUTINE)(_In_ PVOID Context, _In_ PFILE_LOCK_INFO FileLockInfo)
_In_ ULONGLONG _In_ PUNICODE_STRING ShortName
_Must_inspect_result_ ULONG _In_ FSRTL_ALLOCATE_ECP_FLAGS _In_opt_ PFSRTL_EXTRA_CREATE_PARAMETER_CLEANUP_CALLBACK _Inout_ PVOID _Outptr_ PVOID * EcpContext
BOOLEAN NTAPI FsRtlAreNamesEqual(IN PCUNICODE_STRING Name1, IN PCUNICODE_STRING Name2, IN BOOLEAN IgnoreCase, IN PCWCH UpcaseTable OPTIONAL)
VOID NTAPI FsRtlResetBaseMcb(IN PBASE_MCB OpaqueMcb)
_Must_inspect_result_ _In_ LPCGUID EcpType
_Must_inspect_result_ _In_ ULONG _Out_writes_bytes_ pBufferSize PVOID pBuffer
_Must_inspect_result_ _In_ ULONG Flags
_Must_inspect_result_ _In_opt_ PUNLOCK_ROUTINE UnlockRoutine
VOID NTAPI FsRtlTeardownPerStreamContexts(IN PFSRTL_ADVANCED_FCB_HEADER AdvFcbHeader)
NTSTATUS NTAPI FsRtlNotifyVolumeEvent(IN PFILE_OBJECT FileObject, IN ULONG EventCode)
NTKERNELAPI NTSTATUS NTAPI FsRtlGetEcpListFromIrp(IN PIRP Irp, OUT PECP_LIST *EcpList)
const struct winhelp_callbacks Callbacks
_In_ PLIST_ENTRY _In_ PSTRING _In_ USHORT _In_opt_ PSTRING _In_opt_ PSTRING _In_ ULONG FilterMatch
BOOLEAN NTAPI FsRtlAddBaseMcbEntry(IN PBASE_MCB OpaqueMcb, IN LONGLONG Vbn, IN LONGLONG Lbn, IN LONGLONG SectorCount)
InitializeListHead & localAdvHdr
VOID NTAPI FsRtlDissectName(IN UNICODE_STRING Name, OUT PUNICODE_STRING FirstPart, OUT PUNICODE_STRING RemainingPart)
NTKERNELAPI NTSTATUS NTAPI FsRtlGetNextExtraCreateParameter(IN PECP_LIST EcpList, IN PVOID CurrentEcpContext, OUT LPGUID NextEcpType OPTIONAL, OUT PVOID *NextEcpContext, OUT PULONG NextEcpContextSize OPTIONAL)
BOOLEAN NTAPI FsRtlCheckLockForReadAccess(IN PFILE_LOCK FileLock, IN PIRP Irp)
_In_ WDFCOLLECTION _In_ ULONG Index
NTSTATUS NTAPI FsRtlBalanceReads(PDEVICE_OBJECT TargetDevice)
VOID NTAPI FsRtlInitializeOplock(IN OUT POPLOCK Oplock)
BOOLEAN NTAPI FsRtlGetNextBaseMcbEntry(IN PBASE_MCB OpaqueMcb, IN ULONG RunIndex, OUT PLONGLONG Vbn, OUT PLONGLONG Lbn, OUT PLONGLONG SectorCount)
VOID NTAPI FsRtlInitializeTunnelCache(IN PTUNNEL Cache)
enum _WAIT_TYPE WAIT_TYPE
BOOLEAN NTAPI FsRtlRemoveBaseMcbEntry(IN PBASE_MCB OpaqueMcb, IN LONGLONG Vbn, IN LONGLONG SectorCount)
VOID NTAPI FsRtlPostStackOverflow(IN PVOID Context, IN PKEVENT Event, IN PFSRTL_STACK_OVERFLOW_ROUTINE StackOverflowRoutine)
#define FSRTL_FLAG2_SUPPORTS_FILTER_CONTEXTS
BOOLEAN NTAPI FsRtlLookupLastBaseMcbEntryAndIndex(IN PBASE_MCB OpaqueMcb, IN OUT PLONGLONG LargeVbn, IN OUT PLONGLONG LargeLbn, IN OUT PULONG Index)
#define OPLOCK_FLAG_BACK_OUT_ATOMIC_OPLOCK
_In_ ULONGLONG DirectoryKey
BOOLEAN NTAPI FsRtlCurrentBatchOplock(IN POPLOCK Oplock)
_Must_inspect_result_ _In_opt_ PWDF_OBJECT_ATTRIBUTES _In_ _Strict_type_match_ POOL_TYPE _In_opt_ ULONG PoolTag
_In_ PLARGE_INTEGER _In_ ULONG _In_ BOOLEAN _In_ ULONG _Out_writes_bytes_(Length) PVOID Buffer
BOOLEAN NTAPI FsRtlAddLargeMcbEntry(IN PLARGE_MCB Mcb, IN LONGLONG Vbn, IN LONGLONG Lbn, IN LONGLONG SectorCount)
NTSTATUS NTAPI FsRtlCreateSectionForDataScan(OUT PHANDLE SectionHandle, OUT PVOID *SectionObject, OUT PLARGE_INTEGER SectionFileSize OPTIONAL, IN PFILE_OBJECT FileObject, IN ACCESS_MASK DesiredAccess, IN POBJECT_ATTRIBUTES ObjectAttributes OPTIONAL, IN PLARGE_INTEGER MaximumSize OPTIONAL, IN ULONG SectionPageProtection, IN ULONG AllocationAttributes, IN ULONG Flags)
_In_ PLIST_ENTRY _In_ PVOID _In_ PSTRING _In_ BOOLEAN WatchTree
NTSTATUS(NTAPI * PCOMPLETE_LOCK_IRP_ROUTINE)(_In_ PVOID Context, _In_ PIRP Irp)
_Must_inspect_result_ _In_opt_ PVOID _Out_opt_ LPGUID NextEcpType
NTKERNELAPI VOID NTAPI FsRtlIncrementCcFastMdlReadWait(VOID)
_In_opt_ PFILE_OBJECT Fo2
_Must_inspect_result_ _Out_ PLARGE_INTEGER FileSize
int jpeg_marker_parser_method routine
_In_ PLIST_ENTRY _In_ PVOID _In_ PSTRING _In_ BOOLEAN _In_ BOOLEAN _In_ ULONG CompletionFilter
NTSTATUS NTAPI FsRtlFastUnlockAll(IN PFILE_LOCK FileLock, IN PFILE_OBJECT FileObject, IN PEPROCESS Process, IN PVOID Context OPTIONAL)
BOOLEAN NTAPI FsRtlLookupLastMcbEntry(IN PMCB Mcb, OUT PVBN Vbn, OUT PLBN Lbn)
#define _Must_inspect_result_
BOOLEAN NTAPI FsRtlLookupLastLargeMcbEntryAndIndex(IN PLARGE_MCB OpaqueMcb, OUT PLONGLONG LargeVbn, OUT PLONGLONG LargeLbn, OUT PULONG Index)
_Must_inspect_result_ _In_ WDFDEVICE _In_ BOOLEAN _In_opt_ PVOID Tag
_In_ LONGLONG _Out_opt_ PLONGLONG _Out_opt_ PLONGLONG _Out_opt_ PLONGLONG _Out_opt_ PLONGLONG SectorCountFromStartingLbn
_Must_inspect_result_ _In_opt_ PVOID _Out_opt_ LPGUID _Outptr_opt_ PVOID _Out_opt_ ULONG * NextEcpContextSize
struct @1632::@1633 driver
_Must_inspect_result_ _In_ WDFCOLLECTION _In_ WDFOBJECT Object
NTSTATUS NTAPI FsRtlProcessFileLock(IN PFILE_LOCK FileLock, IN PIRP Irp, IN PVOID Context OPTIONAL)
VOID(NTAPI * PFSRTL_STACK_OVERFLOW_ROUTINE)(_In_ PVOID Context, _In_ PKEVENT Event)
BOOLEAN NTAPI FsRtlIsFatDbcsLegal(IN ANSI_STRING DbcsName, IN BOOLEAN WildCardsPermissible, IN BOOLEAN PathNamePermissible, IN BOOLEAN LeadingBackslashPermissible)
_In_ PLIST_ENTRY _In_ PSTRING _In_ USHORT _In_opt_ PSTRING _In_opt_ PSTRING _In_ ULONG _In_ ULONG _In_opt_ PVOID TargetContext
_When_(CompletionRoutine !=NULL, _Must_inspect_result_) _IRQL_requires_max_(APC_LEVEL) NTKERNELAPI NTSTATUS NTAPI FsRtlCheckOplock(_In_ POPLOCK Oplock
#define FSRTL_FLAG_ADVANCED_HEADER
BOOLEAN NTAPI FsRtlLookupLargeMcbEntry(IN PLARGE_MCB Mcb, IN LONGLONG Vbn, OUT PLONGLONG Lbn OPTIONAL, OUT PLONGLONG SectorCountFromLbn OPTIONAL, OUT PLONGLONG StartingLbn OPTIONAL, OUT PLONGLONG SectorCountFromStartingLbn OPTIONAL, OUT PULONG Index OPTIONAL)
PFSRTL_PER_FILEOBJECT_CONTEXT NTAPI FsRtlRemovePerFileObjectContext(IN PFILE_OBJECT FileObject, IN PVOID OwnerId OPTIONAL, IN PVOID InstanceId OPTIONAL)
VOID NTAPI FsRtlTruncateBaseMcb(IN PBASE_MCB OpaqueMcb, IN LONGLONG Vbn)
_Must_inspect_result_ _In_ PUNICODE_STRING RedirDevName
PFSRTL_PER_STREAM_CONTEXT NTAPI FsRtlRemovePerStreamContext(IN PFSRTL_ADVANCED_FCB_HEADER AdvFcbHeader, IN PVOID OwnerId OPTIONAL, IN PVOID InstanceId OPTIONAL)
The FsRtlAllocateResource routine is but is exported to support existing driver binaries Use ExAllocateFromNPagedLookasideList and ExInitializeResourceLite instead NTKERNELAPI PERESOURCE NTAPI FsRtlAllocateResource(VOID)
_In_ WDFIOTARGET _In_ _Strict_type_match_ WDF_IO_TARGET_SENT_IO_ACTION Action
_In_ PLIST_ENTRY _In_ PSTRING _In_ USHORT TargetNameOffset
_Must_inspect_result_ _In_opt_ PVOID CurrentEcpContext
#define InitializeListHead(ListHead)
IN PVCB IN ULONG IN OUT PULONG IN BOOLEAN OUT PLARGE_MCB Mcb
_In_ ULONGLONG _In_ PUNICODE_STRING _In_ PUNICODE_STRING LongName
NTKERNELAPI ULONG NTAPI FsRtlQueryMaximumVirtualDiskNestingLevel(VOID)
_In_ WDFREQUEST _In_opt_ PFN_WDF_REQUEST_COMPLETION_ROUTINE CompletionRoutine
BOOLEAN NTAPI FsRtlAddMcbEntry(IN PMCB Mcb, IN VBN Vbn, IN LBN Lbn, IN ULONG SectorCount)
_Must_inspect_result_ _In_ PDEVICE_OBJECT _In_ PSECTION_OBJECT_POINTERS _In_ NTSTATUS FlushError
VOID NTAPI FsRtlUninitializeLargeMcb(IN PLARGE_MCB Mcb)
_Must_inspect_result_ _In_ PUNICODE_STRING _In_ BOOLEAN _In_opt_ PWCHAR UpcaseTable
NTSTATUS NTAPI FsRtlOplockBreakToNone(IN PINTERNAL_OPLOCK Oplock, IN PIO_STACK_LOCATION Stack, IN PIRP Irp, IN PVOID Context, IN POPLOCK_WAIT_COMPLETE_ROUTINE CompletionRoutine OPTIONAL, IN POPLOCK_FS_PREPOST_IRP PostIrpRoutine OPTIONAL)
_Must_inspect_result_ _In_ LONGLONG _In_ LONGLONG _In_ LONGLONG SectorCount
_In_ PLIST_ENTRY _In_ PVOID _In_ PSTRING _In_ BOOLEAN _In_ BOOLEAN _In_ ULONG _In_opt_ PIRP _In_opt_ PCHECK_FOR_TRAVERSE_ACCESS _In_opt_ PSECURITY_SUBJECT_CONTEXT _In_opt_ PFILTER_REPORT_CHANGE FilterCallback
NTSTATUS NTAPI FsRtlRemoveDotsFromPath(PWSTR OriginalString, USHORT PathLength, USHORT *NewLength)
PFSRTL_PER_FILEOBJECT_CONTEXT NTAPI FsRtlLookupPerFileObjectContext(IN PFILE_OBJECT FileObject, IN PVOID OwnerId OPTIONAL, IN PVOID InstanceId OPTIONAL)
IN PLARGE_INTEGER IN PLARGE_INTEGER PEPROCESS ULONG BOOLEAN BOOLEAN ExclusiveLock
The FsRtlAllocateResource routine is obsolete
_Must_inspect_result_ NTKERNELAPI BOOLEAN NTAPI FsRtlIsNtstatusExpected(_In_ NTSTATUS Ntstatus)
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)
VOID NTAPI FsRtlRemoveMcbEntry(IN PMCB Mcb, IN VBN Vbn, IN ULONG SectorCount)
NTKERNELAPI VOID NTAPI FsRtlIncrementCcFastReadNotPossible(VOID)
_In_ PLIST_ENTRY _In_ PVOID _In_ PSTRING _In_ BOOLEAN _In_ BOOLEAN _In_ ULONG _In_opt_ PIRP _In_opt_ PCHECK_FOR_TRAVERSE_ACCESS _In_opt_ PSECURITY_SUBJECT_CONTEXT SubjectContext
_Must_inspect_result_ _In_ PLARGE_INTEGER _In_ PLARGE_INTEGER _In_ ULONG _In_ PFILE_OBJECT _In_ PVOID Process
VOID NTAPI FsRtlFreeFileLock(IN PFILE_LOCK FileLock)
VOID NTAPI FsRtlNotifyInitializeSync(IN PNOTIFY_SYNC *NotifySync)
_In_ PLIST_ENTRY _In_ PVOID FsContext
_In_ PLIST_ENTRY _In_ PVOID _In_ PSTRING FullDirectoryName
VOID NTAPI FsRtlResetLargeMcb(IN PLARGE_MCB Mcb, IN BOOLEAN SelfSynchronized)
_Must_inspect_result_ _In_ WDFDEVICE _In_ DEVICE_REGISTRY_PROPERTY _In_ _Strict_type_match_ POOL_TYPE PoolType
NTSTATUS NTAPI FsRtlInsertPerStreamContext(IN PFSRTL_ADVANCED_FCB_HEADER AdvFcbHeader, IN PFSRTL_PER_STREAM_CONTEXT PerStreamContext)
__in UCHAR __in POWER_STATE __in_opt PVOID __in PIO_STATUS_BLOCK IoStatus
_Must_inspect_result_ _In_ WAIT_TYPE _In_opt_ PLARGE_INTEGER _In_opt_ PKWAIT_BLOCK WaitBlockArray
#define _Outptr_result_maybenull_
#define FSRTL_FCB_HEADER_V1
_Out_ PLONGLONG _Out_ PLONGLONG LargeLbn
VOID(* PFSRTL_EXTRA_CREATE_PARAMETER_CLEANUP_CALLBACK)(_Inout_ PVOID EcpContext, _In_ LPCGUID EcpType)
_Must_inspect_result_ _In_ BOOLEAN Restart
$if(_NTIFS_) _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) NTKERNELAPI BOOLEAN NTAPI FsRtlCopyRead(_In_ PFILE_OBJECT FileObject
VOID NTAPI FsRtlNotifyUninitializeSync(IN PNOTIFY_SYNC *NotifySync)
NTSTATUS NTAPI FsRtlCheckOplock(IN POPLOCK Oplock, IN PIRP Irp, IN PVOID Context, IN POPLOCK_WAIT_COMPLETE_ROUTINE CompletionRoutine OPTIONAL, IN POPLOCK_FS_PREPOST_IRP PostIrpRoutine OPTIONAL)
_Must_inspect_result_ _In_ PCUNICODE_STRING RedirectorDeviceName
_Must_inspect_result_ _In_ PCUNICODE_STRING Name2
_In_opt_ PCOMPLETE_LOCK_IRP_ROUTINE CompleteLockIrpRoutine
NTKERNELAPI NTSTATUS NTAPI FsRtlNotifyStreamFileObject(_In_ struct _FILE_OBJECT *StreamFileObject, _In_opt_ struct _DEVICE_OBJECT *DeviceObjectHint, _In_ FS_FILTER_STREAM_FO_NOTIFICATION_TYPE NotificationType, _In_ BOOLEAN SafeToRecurse)
_In_ PKEVENT _In_ PFSRTL_STACK_OVERFLOW_ROUTINE StackOverflowRoutine
_Must_inspect_result_ _In_ PCUNICODE_STRING _In_ BOOLEAN MailslotsSupported
_Must_inspect_result_ _In_opt_ PVOID OwnerId
VOID NTAPI FsRtlDeleteTunnelCache(IN PTUNNEL Cache)
VOID(NTAPI * POPLOCK_FS_PREPOST_IRP)(_In_ PVOID Context, _In_ PIRP Irp)
_Must_inspect_result_ _In_ ULONG _In_ FSRTL_ALLOCATE_ECP_FLAGS _In_opt_ PFSRTL_EXTRA_CREATE_PARAMETER_CLEANUP_CALLBACK _In_ ULONG _Outptr_result_bytebuffer_(SizeOfContext) PVOID *EcpContext)
#define FsRtlFastLock(A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11)
_Out_ PANSI_STRING FirstPart
BOOLEAN NTAPI FsRtlFastCheckLockForWrite(IN PFILE_LOCK FileLock, IN PLARGE_INTEGER FileOffset, IN PLARGE_INTEGER Length, IN ULONG Key, IN PFILE_OBJECT FileObject, IN PVOID Process)
ULONG NTAPI FsRtlNumberOfRunsInMcb(IN PMCB Mcb)
ULONG NTAPI FsRtlNumberOfRunsInBaseMcb(IN PBASE_MCB OpaqueMcb)
_In_ PIRP _In_opt_ PVOID _In_opt_ POPLOCK_WAIT_COMPLETE_ROUTINE _In_opt_ POPLOCK_FS_PREPOST_IRP PostIrpRoutine
BOOLEAN NTAPI FsRtlOplockIsFastIoPossible(IN POPLOCK Oplock)
BOOLEAN NTAPI FsRtlSplitLargeMcb(IN PLARGE_MCB Mcb, IN LONGLONG Vbn, IN LONGLONG Amount)
_Must_inspect_result_ _Outptr_ PVOID _Out_opt_ PLARGE_INTEGER _In_ PFILE_OBJECT _In_ ACCESS_MASK _In_opt_ POBJECT_ATTRIBUTES ObjectAttributes
_Must_inspect_result_ _In_ ULONG Level
enum _FSRTL_CHANGE_BACKING_TYPE FSRTL_CHANGE_BACKING_TYPE
ULONG FSRTL_ALLOCATE_ECP_FLAGS
NTSTATUS NTAPI FsRtlRegisterUncProvider(OUT PHANDLE Handle, IN PCUNICODE_STRING RedirectorDeviceName, IN BOOLEAN MailslotsSupported)
VOID NTAPI FsRtlDeregisterUncProvider(IN HANDLE Handle)
PFSRTL_PER_STREAM_CONTEXT NTAPI FsRtlLookupPerStreamContextInternal(IN PFSRTL_ADVANCED_FCB_HEADER AdvFcbHeader, IN PVOID OwnerId OPTIONAL, IN PVOID InstanceId OPTIONAL)
VOID NTAPI FsRtlNotifyFilterChangeDirectory(IN PNOTIFY_SYNC NotifySync, IN PLIST_ENTRY NotifyList, IN PVOID FsContext, IN PSTRING FullDirectoryName, IN BOOLEAN WatchTree, IN BOOLEAN IgnoreBuffer, IN ULONG CompletionFilter, IN PIRP NotifyIrp, IN PCHECK_FOR_TRAVERSE_ACCESS TraverseCallback OPTIONAL, IN PSECURITY_SUBJECT_CONTEXT SubjectContext OPTIONAL, IN PFILTER_REPORT_CHANGE FilterCallback OPTIONAL)