ReactOS 0.4.15-dev-7788-g1ad9096
fsrtlfuncs.h
Go to the documentation of this file.
2/* FSRTL Functions */
3
4#define FsRtlEnterFileSystem KeEnterCriticalRegion
5#define FsRtlExitFileSystem KeLeaveCriticalRegion
6
7#if (NTDDI_VERSION >= NTDDI_WIN2K)
8
23
38
52
61
75
86
89VOID
93
96VOID
100
105NTAPI
109
113NTAPI
116
121NTAPI
125
128VOID
129NTAPI
131 _In_ PFILE_LOCK FileLock);
132
135VOID
136NTAPI
138 _Out_ PFILE_LOCK FileLock,
141
144VOID
145NTAPI
147 _Inout_ PFILE_LOCK FileLock);
148
149/*
150 FsRtlProcessFileLock:
151
152 ret:
153 -STATUS_INVALID_DEVICE_REQUEST
154 -STATUS_RANGE_NOT_LOCKED from unlock routines.
155 -STATUS_PENDING, STATUS_LOCK_NOT_GRANTED from FsRtlPrivateLock
156 (redirected IoStatus->Status).
157
158 Internals:
159 -switch ( Irp->CurrentStackLocation->MinorFunction )
160 lock: return FsRtlPrivateLock;
161 unlocksingle: return FsRtlFastUnlockSingle;
162 unlockall: return FsRtlFastUnlockAll;
163 unlockallbykey: return FsRtlFastUnlockAllByKey;
164 default: IofCompleteRequest with STATUS_INVALID_DEVICE_REQUEST;
165 return STATUS_INVALID_DEVICE_REQUEST;
166
167 -'AllwaysZero' is passed thru as 'AllwaysZero' to lock / unlock routines.
168 -'Irp' is passet thru as 'Irp' to FsRtlPrivateLock.
169*/
174NTAPI
176 _In_ PFILE_LOCK FileLock,
179
180/*
181 FsRtlCheckLockForReadAccess:
182
183 All this really does is pick out the lock parameters from the irp (io stack
184 location?), get IoGetRequestorProcess, and pass values on to
185 FsRtlFastCheckLockForRead.
186*/
191NTAPI
193 _In_ PFILE_LOCK FileLock,
194 _In_ PIRP Irp);
195
196/*
197 FsRtlCheckLockForWriteAccess:
198
199 All this really does is pick out the lock parameters from the irp (io stack
200 location?), get IoGetRequestorProcess, and pass values on to
201 FsRtlFastCheckLockForWrite.
202*/
207NTAPI
209 _In_ PFILE_LOCK FileLock,
210 _In_ PIRP Irp);
211
216NTAPI
218 _In_ PFILE_LOCK FileLock,
224
229NTAPI
231 _In_ PFILE_LOCK FileLock,
234 _In_ ULONG Key,
237
238/*
239 FsRtlGetNextFileLock:
240
241 ret: NULL if no more locks
242
243 Internals:
244 FsRtlGetNextFileLock uses FileLock->LastReturnedLockInfo and
245 FileLock->LastReturnedLock as storage.
246 LastReturnedLock is a pointer to the 'raw' lock inkl. double linked
247 list, and FsRtlGetNextFileLock needs this to get next lock on subsequent
248 calls with Restart = FALSE.
249*/
254NTAPI
256 _In_ PFILE_LOCK FileLock,
258
262NTAPI
264 _In_ PFILE_LOCK FileLock,
269 _In_ ULONG Key,
272
276NTAPI
278 _In_ PFILE_LOCK FileLock,
282
286NTAPI
288 _In_ PFILE_LOCK FileLock,
291 _In_ ULONG Key,
293
294/*
295 FsRtlPrivateLock:
296
297 ret: IoStatus->Status: STATUS_PENDING, STATUS_LOCK_NOT_GRANTED
298
299 Internals:
300 -Calls IoCompleteRequest if Irp
301 -Uses exception handling / ExRaiseStatus with STATUS_INSUFFICIENT_RESOURCES
302*/
308NTAPI
310 _In_ PFILE_LOCK FileLock,
315 _In_ ULONG Key,
322
325VOID
326NTAPI
329
332VOID
333NTAPI
342
347NTAPI
356
359VOID
360NTAPI
364
367VOID
368NTAPI
371
374VOID
375NTAPI
380
385NTAPI
388
393NTAPI
397
402NTAPI
404 _In_ ANSI_STRING DbcsName,
408
413NTAPI
415 _In_ ANSI_STRING DbcsName,
419
422NTAPI
424 _In_ NTSTATUS Exception,
425 _In_ NTSTATUS GenericException);
426
430NTAPI
432 _In_ NTSTATUS Ntstatus);
433
435__drv_preferredFunction(ExAllocateFromNPagedLookasideList, "The FsRtlAllocateResource routine is obsolete, but is exported to support existing driver binaries. Use ExAllocateFromNPagedLookasideList and ExInitializeResourceLite instead.")
438NTAPI
440
443VOID
444NTAPI
448
451VOID
452NTAPI
455
458VOID
459NTAPI
463
466VOID
467NTAPI
471
476NTAPI
482
485VOID
486NTAPI
491
495NTAPI
504
508NTAPI
513
517NTAPI
519 _In_ PLARGE_MCB OpaqueMcb,
523
526ULONG
527NTAPI
530
535NTAPI
542
547NTAPI
552
556VOID
557NTAPI
559 _Out_ PMCB Mcb,
561
564VOID
565NTAPI
568
571VOID
572NTAPI
575 _In_ VBN Vbn);
576
580NTAPI
583 _In_ VBN Vbn,
584 _In_ LBN Lbn,
586
589VOID
590NTAPI
593 _In_ VBN Vbn,
595
599NTAPI
601 _In_ PMCB Mcb,
602 _In_ VBN Vbn,
603 _Out_ PLBN Lbn,
606
610NTAPI
612 _In_ PMCB Mcb,
613 _Out_ PVBN Vbn,
614 _Out_ PLBN Lbn);
615
618ULONG
619NTAPI
621 _In_ PMCB Mcb);
622
627NTAPI
629 _In_ PMCB Mcb,
631 _Out_ PVBN Vbn,
632 _Out_ PLBN Lbn,
634
638NTAPI
641
644VOID
645NTAPI
647 _Inout_ POPLOCK Oplock);
648
651VOID
652NTAPI
654 _Inout_ POPLOCK Oplock);
655
660NTAPI
662 _In_ POPLOCK Oplock,
663 _In_ PIRP Irp,
665
670NTAPI
672 _In_ POPLOCK Oplock,
673 _In_ PIRP Irp,
677
682NTAPI
684 _In_ POPLOCK Oplock);
685
690NTAPI
692 _In_ POPLOCK Oplock);
693
697NTAPI
701
704VOID
705NTAPI
707 _In_ PNOTIFY_SYNC *NotifySync);
708
711VOID
712NTAPI
714 _In_ PNOTIFY_SYNC *NotifySync);
715
718VOID
719NTAPI
721 _In_ PNOTIFY_SYNC NotifySync,
731
734VOID
735NTAPI
737 _In_ PNOTIFY_SYNC NotifySync,
747
750VOID
751NTAPI
753 _In_ PNOTIFY_SYNC NotifySync,
762
765VOID
766NTAPI
768 _In_ PNOTIFY_SYNC NotifySync,
771
774VOID
775NTAPI
780
785NTAPI
788
793NTAPI
799
804NTAPI
810
813VOID
814NTAPI
819
822VOID
823NTAPI
828
833NTAPI
838
841VOID
842NTAPI
845
848VOID
849NTAPI
851 _In_ PFSRTL_ADVANCED_FCB_HEADER AdvancedHeader);
852
857NTAPI
859 _Out_ PHANDLE SectionHandle,
869
870#endif /* (NTDDI_VERSION >= NTDDI_WIN2K) */
871
872#if (NTDDI_VERSION >= NTDDI_WINXP)
873
876VOID
877NTAPI
879 _In_ PNOTIFY_SYNC NotifySync,
890
895NTAPI
897 _In_ PFSRTL_ADVANCED_FCB_HEADER PerStreamContext,
899
904NTAPI
906 _In_ PFSRTL_ADVANCED_FCB_HEADER StreamContext,
909
914NTAPI
916 _In_ PFSRTL_ADVANCED_FCB_HEADER StreamContext,
919
921VOID
922NTAPI
924 VOID);
925
927VOID
928NTAPI
930
932VOID
933NTAPI
935
937VOID
938NTAPI
940
943LOGICAL
944NTAPI
947
948#endif /* (NTDDI_VERSION >= NTDDI_WINXP) */
949
950#if (NTDDI_VERSION >= NTDDI_WS03)
951
954VOID
955NTAPI
959
962VOID
963NTAPI
966
969VOID
970NTAPI
973
976VOID
977NTAPI
981
985NTAPI
991
995NTAPI
1000
1003BOOLEAN
1004NTAPI
1013
1016BOOLEAN
1017NTAPI
1022
1025BOOLEAN
1026NTAPI
1028 _In_ PBASE_MCB OpaqueMcb,
1032
1035ULONG
1036NTAPI
1039
1042BOOLEAN
1043NTAPI
1050
1053BOOLEAN
1054NTAPI
1059
1060#endif /* (NTDDI_VERSION >= NTDDI_WS03) */
1061
1062#if (NTDDI_VERSION >= NTDDI_VISTA)
1063
1066BOOLEAN
1067NTAPI
1068FsRtlInitializeBaseMcbEx(
1071 _In_ USHORT Flags);
1072
1076NTAPI
1077FsRtlAddBaseMcbEntryEx(
1082
1086BOOLEAN
1087NTAPI
1088FsRtlCurrentOplock(
1089 _In_ POPLOCK Oplock);
1090
1095NTAPI
1097 _Inout_ POPLOCK Oplock,
1099 _In_ PIRP Irp,
1103
1107NTAPI
1108FsRtlNotifyVolumeEventEx(
1112
1115VOID
1116NTAPI
1117FsRtlNotifyCleanupAll(
1118 _In_ PNOTIFY_SYNC NotifySync,
1120
1124NTAPI
1125FsRtlRegisterUncProviderEx(
1129 _In_ ULONG Flags);
1130
1136NTAPI
1137FsRtlCancellableWaitForSingleObject(
1140 _In_opt_ PIRP Irp);
1141
1147NTAPI
1148FsRtlCancellableWaitForMultipleObjects(
1150 _In_reads_(Count) PVOID ObjectArray[],
1154 _In_opt_ PIRP Irp);
1155
1160NTAPI
1161FsRtlMupGetProviderInfoFromFileObject(
1162 _In_ PFILE_OBJECT pFileObject,
1166
1171NTAPI
1172FsRtlMupGetProviderIdFromName(
1173 _In_ PUNICODE_STRING pProviderName,
1175
1177VOID
1178NTAPI
1180
1185NTAPI
1189
1194NTAPI
1196 _Inout_updates_bytes_(PathLength) PWSTR OriginalString,
1199
1204NTAPI
1205FsRtlAllocateExtraCreateParameterList(
1208
1211VOID
1212NTAPI
1213FsRtlFreeExtraCreateParameterList(
1215
1220NTAPI
1221FsRtlAllocateExtraCreateParameter(
1228
1231VOID
1232NTAPI
1233FsRtlFreeExtraCreateParameter(
1235
1239VOID
1240NTAPI
1241FsRtlInitExtraCreateParameterLookasideList(
1246
1249VOID
1250NTAPI
1251FsRtlDeleteExtraCreateParameterLookasideList(
1254
1259NTAPI
1260FsRtlAllocateExtraCreateParameterFromLookasideList(
1267
1272NTAPI
1273FsRtlInsertExtraCreateParameter(
1276
1281NTAPI
1282FsRtlFindExtraCreateParameter(
1287
1292NTAPI
1293FsRtlRemoveExtraCreateParameter(
1298
1303NTAPI
1305 _In_ PIRP Irp,
1307
1312NTAPI
1313FsRtlSetEcpListIntoIrp(
1316
1321NTAPI
1328
1331VOID
1332NTAPI
1333FsRtlAcknowledgeEcp(
1335
1338BOOLEAN
1339NTAPI
1340FsRtlIsEcpAcknowledged(
1342
1345BOOLEAN
1346NTAPI
1347FsRtlIsEcpFromUserMode(
1349
1354NTAPI
1355FsRtlChangeBackingFileObject(
1356 _In_opt_ PFILE_OBJECT CurrentFileObject,
1359 _In_ ULONG Flags);
1360
1365NTAPI
1366FsRtlLogCcFlushError(
1371 _In_ ULONG Flags);
1372
1375BOOLEAN
1376NTAPI
1377FsRtlAreVolumeStartupApplicationsComplete(VOID);
1378
1380ULONG
1381NTAPI
1383
1386NTAPI
1389 _Out_ PULONG NestingLevel,
1390 _Out_opt_ PULONG NestingFlags);
1391
1392#endif /* (NTDDI_VERSION >= NTDDI_VISTA) */
1393
1394#if (NTDDI_VERSION >= NTDDI_VISTASP1)
1399NTAPI
1400FsRtlCheckOplockEx(
1401 _In_ POPLOCK Oplock,
1402 _In_ PIRP Irp,
1407
1408#endif
1409
1410#if (NTDDI_VERSION >= NTDDI_WIN7)
1411
1414BOOLEAN
1415NTAPI
1416FsRtlAreThereCurrentOrInProgressFileLocks(
1417 _In_ PFILE_LOCK FileLock);
1418
1422BOOLEAN
1423NTAPI
1424FsRtlOplockIsSharedRequest(
1425 _In_ PIRP Irp);
1426
1431NTAPI
1432FsRtlOplockBreakH(
1433 _In_ POPLOCK Oplock,
1434 _In_ PIRP Irp,
1439
1442BOOLEAN
1443NTAPI
1444FsRtlCurrentOplockH(
1445 _In_ POPLOCK Oplock);
1446
1451NTAPI
1452FsRtlOplockBreakToNoneEx(
1453 _Inout_ POPLOCK Oplock,
1454 _In_ PIRP Irp,
1459
1464NTAPI
1465FsRtlOplockFsctrlEx(
1466 _In_ POPLOCK Oplock,
1467 _In_ PIRP Irp,
1469 _In_ ULONG Flags);
1470
1473BOOLEAN
1474NTAPI
1475FsRtlOplockKeysEqual(
1478
1481NTAPI
1484
1486VOID
1487NTAPI
1489 _Out_ PECP_HEADER Ecp,
1490 _In_ ULONG EcpFlags,
1492 _In_ ULONG TotalSize,
1494 _In_opt_ PVOID ListAllocatedFrom);
1495
1496#endif /* (NTDDI_VERSION >= NTDDI_WIN7) */
1497
1502NTAPI
1503FsRtlInsertPerFileContext(
1504 _In_ PVOID* PerFileContextPointer,
1506
1511NTAPI
1512FsRtlLookupPerFileContext(
1513 _In_ PVOID* PerFileContextPointer,
1516
1521NTAPI
1522FsRtlRemovePerFileContext(
1523 _In_ PVOID* PerFileContextPointer,
1526
1529VOID
1530NTAPI
1531FsRtlTeardownPerFileContexts(
1532 _In_ PVOID* PerFileContextPointer);
1533
1538NTAPI
1542
1547NTAPI
1552
1557NTAPI
1562
1565NTAPI
1567 _In_ struct _DRIVER_OBJECT *FilterDriverObject,
1569
1570#if (NTDDI_VERSION >= NTDDI_VISTA)
1573NTAPI
1575 _In_ struct _FILE_OBJECT * StreamFileObject,
1576 _In_opt_ struct _DEVICE_OBJECT *DeviceObjectHint,
1578 _In_ BOOLEAN SafeToRecurse);
1579#endif /* (NTDDI_VERSION >= NTDDI_VISTA) */
1580
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)
1583
1584#define FsRtlAreThereCurrentFileLocks(FL) \
1585 ((FL)->FastIoIsQuestionable)
1586
1587#define FsRtlIncrementLockRequestsInProgress(FL) { \
1588 ASSERT((FL)->LockRequestsInProgress >= 0); \
1589 (void) \
1590 (InterlockedIncrement((LONG volatile *)&((FL)->LockRequestsInProgress))); \
1591}
1592
1593#define FsRtlDecrementLockRequestsInProgress(FL) { \
1594 ASSERT((FL)->LockRequestsInProgress > 0); \
1595 (void) \
1596 (InterlockedDecrement((LONG volatile *)&((FL)->LockRequestsInProgress))); \
1597}
1598
1599#ifdef _NTSYSTEM_
1600extern const UCHAR * const FsRtlLegalAnsiCharacterArray;
1601#define LEGAL_ANSI_CHARACTER_ARRAY FsRtlLegalAnsiCharacterArray
1602#else
1604extern const UCHAR * const *FsRtlLegalAnsiCharacterArray;
1605#define LEGAL_ANSI_CHARACTER_ARRAY (*FsRtlLegalAnsiCharacterArray)
1606#endif
1607
1608#define FsRtlIsAnsiCharacterWild(C) \
1609 FsRtlTestAnsiCharacter((C), FALSE, FALSE, FSRTL_WILD_CHARACTER)
1610
1611#define FsRtlIsAnsiCharacterLegalFat(C, WILD) \
1612 FsRtlTestAnsiCharacter((C), TRUE, (WILD), FSRTL_FAT_LEGAL)
1613
1614#define FsRtlIsAnsiCharacterLegalHpfs(C, WILD) \
1615 FsRtlTestAnsiCharacter((C), TRUE, (WILD), FSRTL_HPFS_LEGAL)
1616
1617#define FsRtlIsAnsiCharacterLegalNtfs(C, WILD) \
1618 FsRtlTestAnsiCharacter((C), TRUE, (WILD), FSRTL_NTFS_LEGAL)
1619
1620#define FsRtlIsAnsiCharacterLegalNtfsStream(C,WILD_OK) \
1621 FsRtlTestAnsiCharacter((C), TRUE, (WILD_OK), FSRTL_NTFS_STREAM_LEGAL)
1622
1623#define FsRtlIsAnsiCharacterLegal(C,FLAGS) \
1624 FsRtlTestAnsiCharacter((C), TRUE, FALSE, (FLAGS))
1625
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)))
1630
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))))
1635
1636#define FsRtlIsUnicodeCharacterWild(C) \
1637 ((((C) >= 0x40) ? FALSE : \
1638 FlagOn(LEGAL_ANSI_CHARACTER_ARRAY[(C)], FSRTL_WILD_CHARACTER )))
1639
1640#define FsRtlInitPerFileContext(_fc, _owner, _inst, _cb) \
1641 ((_fc)->OwnerId = (_owner), \
1642 (_fc)->InstanceId = (_inst), \
1643 (_fc)->FreeCallback = (_cb))
1644
1645#define FsRtlGetPerFileContextPointer(_fo) \
1646 (FsRtlSupportsPerFileContexts(_fo) ? \
1647 FsRtlGetPerStreamContextPointer(_fo)->FileContextSupportPointer : NULL)
1648
1649#define FsRtlSupportsPerFileContexts(_fo) \
1650 ((FsRtlGetPerStreamContextPointer(_fo) != NULL) && \
1651 (FsRtlGetPerStreamContextPointer(_fo)->Version >= FSRTL_FCB_HEADER_V1) && \
1652 (FsRtlGetPerStreamContextPointer(_fo)->FileContextSupportPointer != NULL))
1653
1654#define FsRtlSetupAdvancedHeaderEx(_advhdr, _fmutx, _fctxptr) \
1655{ \
1656 FsRtlSetupAdvancedHeader( _advhdr, _fmutx ); \
1657 if ((_fctxptr) != NULL) { \
1658 (_advhdr)->FileContextSupportPointer = (_fctxptr); \
1659 } \
1660}
1661
1662#define FsRtlGetPerStreamContextPointer(FO) \
1663 ((PFSRTL_ADVANCED_FCB_HEADER)(FO)->FsContext)
1664
1665#define FsRtlInitPerStreamContext(PSC, O, I, FC) \
1666 ((PSC)->OwnerId = (O), \
1667 (PSC)->InstanceId = (I), \
1668 (PSC)->FreeCallback = (FC))
1669
1670#define FsRtlSupportsPerStreamContexts(FO) \
1671 ((BOOLEAN)((NULL != FsRtlGetPerStreamContextPointer(FO) && \
1672 FlagOn(FsRtlGetPerStreamContextPointer(FO)->Flags2, \
1673 FSRTL_FLAG2_SUPPORTS_FILTER_CONTEXTS)))
1674
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)
1680
1683VOID
1684NTAPI
1685FsRtlSetupAdvancedHeader(
1686 _In_ PVOID AdvHdr,
1688{
1690
1693#if (NTDDI_VERSION >= NTDDI_VISTA)
1695#else
1697#endif
1698 InitializeListHead( &localAdvHdr->FilterContexts );
1699 if (FMutex != NULL) {
1700 localAdvHdr->FastMutex = FMutex;
1701 }
1702#if (NTDDI_VERSION >= NTDDI_VISTA)
1703 *((PULONG_PTR)(&localAdvHdr->PushLock)) = 0;
1704 localAdvHdr->FileContextSupportPointer = NULL;
1705#endif
1706}
1707
1708#define FsRtlInitPerFileObjectContext(_fc, _owner, _inst) \
1709 ((_fc)->OwnerId = (_owner), (_fc)->InstanceId = (_inst))
1710
1711#define FsRtlCompleteRequest(IRP, STATUS) { \
1712 (IRP)->IoStatus.Status = (STATUS); \
1713 IoCompleteRequest( (IRP), IO_DISK_INCREMENT ); \
1714}
PCWSTR Expression
NTSTATUS NTAPI FsRtlRemoveDotsFromPath(PWSTR OriginalString, USHORT PathLength, USHORT *NewLength)
unsigned char BOOLEAN
LONG NTSTATUS
Definition: precomp.h:26
const struct winhelp_callbacks Callbacks
Definition: callback.c:161
unsigned int * PULONG32
Definition: basetsd.h:123
#define __drv_aliasesMem
Definition: btrfs_drv.h:203
Definition: bufpool.h:45
_In_ PIRP Irp
Definition: csq.h:116
BOOLEAN NTAPI FsRtlDoesDbcsContainWildCards(IN PANSI_STRING Name)
Definition: dbcsname.c:117
BOOLEAN NTAPI FsRtlIsFatDbcsLegal(IN ANSI_STRING DbcsName, IN BOOLEAN WildCardsPermissible, IN BOOLEAN PathNamePermissible, IN BOOLEAN LeadingBackslashPermissible)
Definition: dbcsname.c:466
VOID NTAPI FsRtlDissectDbcs(IN ANSI_STRING Name, OUT PANSI_STRING FirstPart, OUT PANSI_STRING RemainingPart)
Definition: dbcsname.c:45
BOOLEAN NTAPI FsRtlIsDbcsInExpression(IN PANSI_STRING Expression, IN PANSI_STRING Name)
Definition: dbcsname.c:160
BOOLEAN NTAPI FsRtlIsHpfsDbcsLegal(IN ANSI_STRING DbcsName, IN BOOLEAN WildCardsPermissible, IN BOOLEAN PathNamePermissible, IN BOOLEAN LeadingBackslashPermissible)
Definition: dbcsname.c:638
#define NULL
Definition: types.h:112
#define __drv_preferredFunction(func, why)
Definition: driverspecs.h:311
#define _IRQL_requires_max_(irql)
Definition: driverspecs.h:230
#define PASSIVE_LEVEL
Definition: env_spec_w32.h:693
NTSTATUS ExInitializeResourceLite(PULONG res)
Definition: env_spec_w32.h:641
#define APC_LEVEL
Definition: env_spec_w32.h:695
ERESOURCE * PERESOURCE
Definition: env_spec_w32.h:595
#define InitializeListHead(ListHead)
Definition: env_spec_w32.h:944
#define DISPATCH_LEVEL
Definition: env_spec_w32.h:696
IN PLARGE_INTEGER IN PLARGE_INTEGER PEPROCESS ULONG BOOLEAN BOOLEAN ExclusiveLock
Definition: fatprocs.h:2714
IN PLARGE_INTEGER IN PLARGE_INTEGER PEPROCESS ULONG BOOLEAN FailImmediately
Definition: fatprocs.h:2713
IN PVCB IN ULONG IN OUT PULONG IN BOOLEAN OUT PLARGE_MCB Mcb
Definition: fatprocs.h:348
NTSTATUS NTAPI FsRtlBalanceReads(PDEVICE_OBJECT TargetDevice)
Definition: faulttol.c:35
PFILE_LOCK_INFO NTAPI FsRtlGetNextFileLock(IN PFILE_LOCK FileLock, IN BOOLEAN Restart)
Definition: filelock.c:255
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)
Definition: filelock.c:782
VOID NTAPI FsRtlInitializeFileLock(IN PFILE_LOCK FileLock, IN PCOMPLETE_LOCK_IRP_ROUTINE CompleteLockIrpRoutine OPTIONAL, IN PUNLOCK_ROUTINE UnlockRoutine OPTIONAL)
Definition: filelock.c:1262
BOOLEAN NTAPI FsRtlCheckLockForWriteAccess(IN PFILE_LOCK FileLock, IN PIRP Irp)
Definition: filelock.c:710
VOID NTAPI FsRtlUninitializeFileLock(IN PFILE_LOCK FileLock)
Definition: filelock.c:1279
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)
Definition: filelock.c:825
NTSTATUS NTAPI FsRtlProcessFileLock(IN PFILE_LOCK FileLock, IN PIRP Irp, IN PVOID Context OPTIONAL)
Definition: filelock.c:1152
PFILE_LOCK NTAPI FsRtlAllocateFileLock(IN PCOMPLETE_LOCK_IRP_ROUTINE CompleteLockIrpRoutine OPTIONAL, IN PUNLOCK_ROUTINE UnlockRoutine OPTIONAL)
Definition: filelock.c:1318
NTSTATUS NTAPI FsRtlFastUnlockAll(IN PFILE_LOCK FileLock, IN PFILE_OBJECT FileObject, IN PEPROCESS Process, IN PVOID Context OPTIONAL)
Definition: filelock.c:1025
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)
Definition: filelock.c:748
BOOLEAN NTAPI FsRtlCheckLockForReadAccess(IN PFILE_LOCK FileLock, IN PIRP Irp)
Definition: filelock.c:672
VOID NTAPI FsRtlFreeFileLock(IN PFILE_LOCK FileLock)
Definition: filelock.c:1342
NTSTATUS NTAPI FsRtlFastUnlockAllByKey(IN PFILE_LOCK FileLock, IN PFILE_OBJECT FileObject, IN PEPROCESS Process, IN ULONG Key, IN PVOID Context OPTIONAL)
Definition: filelock.c:1086
PFSRTL_PER_FILEOBJECT_CONTEXT NTAPI FsRtlLookupPerFileObjectContext(IN PFILE_OBJECT FileObject, IN PVOID OwnerId OPTIONAL, IN PVOID InstanceId OPTIONAL)
Definition: filtrctx.c:74
VOID NTAPI FsRtlTeardownPerStreamContexts(IN PFSRTL_ADVANCED_FCB_HEADER AdvFcbHeader)
Definition: filtrctx.c:368
LOGICAL NTAPI FsRtlIsPagingFile(IN PFILE_OBJECT FileObject)
Definition: filtrctx.c:64
PFSRTL_PER_FILEOBJECT_CONTEXT NTAPI FsRtlRemovePerFileObjectContext(IN PFILE_OBJECT FileObject, IN PVOID OwnerId OPTIONAL, IN PVOID InstanceId OPTIONAL)
Definition: filtrctx.c:254
NTSTATUS NTAPI FsRtlInsertPerStreamContext(IN PFSRTL_ADVANCED_FCB_HEADER AdvFcbHeader, IN PFSRTL_PER_STREAM_CONTEXT PerStreamContext)
Definition: filtrctx.c:235
NTSTATUS NTAPI FsRtlInsertPerFileObjectContext(IN PFILE_OBJECT FileObject, IN PFSRTL_PER_FILEOBJECT_CONTEXT Ptr)
Definition: filtrctx.c:175
PFSRTL_PER_STREAM_CONTEXT NTAPI FsRtlLookupPerStreamContextInternal(IN PFSRTL_ADVANCED_FCB_HEADER AdvFcbHeader, IN PVOID OwnerId OPTIONAL, IN PVOID InstanceId OPTIONAL)
Definition: filtrctx.c:126
PFSRTL_PER_STREAM_CONTEXT NTAPI FsRtlRemovePerStreamContext(IN PFSRTL_ADVANCED_FCB_HEADER AdvFcbHeader, IN PVOID OwnerId OPTIONAL, IN PVOID InstanceId OPTIONAL)
Definition: filtrctx.c:312
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)
Definition: fsfilter.c:60
_Must_inspect_result_ _In_ PLARGE_INTEGER _In_ ULONG _In_ ULONG _Outptr_ PMDL * MdlChain
Definition: fsrtlfuncs.h:49
_Must_inspect_result_ _In_ LONGLONG _In_ LONGLONG Amount
Definition: fsrtlfuncs.h:551
_Must_inspect_result_ _In_ BOOLEAN _In_ BOOLEAN PathNamePermissible
Definition: fsrtlfuncs.h:406
NTKERNELAPI VOID NTAPI FsRtlIncrementCcFastReadWait(VOID)
Definition: fastio.c:44
_Must_inspect_result_ _In_opt_ PVOID _Out_opt_ LPGUID _Outptr_opt_ PVOID _Out_opt_ ULONG * NextEcpContextSize
Definition: fsrtlfuncs.h:1327
_In_ PKEVENT _In_ PFSRTL_STACK_OVERFLOW_ROUTINE StackOverflowRoutine
Definition: fsrtlfuncs.h:818
_Must_inspect_result_ _In_ PDEVICE_OBJECT _In_ PSECTION_OBJECT_POINTERS _In_ NTSTATUS FlushError
Definition: fsrtlfuncs.h:1370
_Must_inspect_result_ _In_ PIRP _In_ ULONG OpenCount
Definition: fsrtlfuncs.h:664
_Must_inspect_result_ _Out_ PULONG32 pProviderId
Definition: fsrtlfuncs.h:1174
_Must_inspect_result_ _In_ PUNICODE_STRING RedirDevName
Definition: fsrtlfuncs.h:1127
_In_ PLIST_ENTRY _In_ PVOID _In_ PSTRING _In_ BOOLEAN _In_ BOOLEAN _In_ ULONG _In_opt_ PIRP _In_opt_ PCHECK_FOR_TRAVERSE_ACCESS TraverseCallback
Definition: fsrtlfuncs.h:729
_In_ PLIST_ENTRY _In_ PSTRING _In_ USHORT _In_opt_ PSTRING _In_opt_ PSTRING _In_ ULONG _In_ ULONG _In_opt_ PVOID TargetContext
Definition: fsrtlfuncs.h:745
The FsRtlAllocateResource routine is obsolete
Definition: fsrtlfuncs.h:435
_Must_inspect_result_ _In_opt_ PVOID _In_opt_ PVOID InstanceId
Definition: fsrtlfuncs.h:908
_Must_inspect_result_ _In_opt_ PVOID CurrentEcpContext
Definition: fsrtlfuncs.h:1324
_Must_inspect_result_ _In_opt_ PUNLOCK_ROUTINE UnlockRoutine
Definition: fsrtlfuncs.h:124
_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
Definition: fsrtlfuncs.h:867
_Must_inspect_result_ _In_ PDEVICE_OBJECT _In_ PSECTION_OBJECT_POINTERS SectionObjectPointer
Definition: fsrtlfuncs.h:1369
NTKERNELAPI NTSTATUS NTAPI FsRtlGetVirtualDiskNestingLevel(_In_ PDEVICE_OBJECT DeviceObject, _Out_ PULONG NestingLevel, _Out_opt_ PULONG NestingFlags)
_In_ PLIST_ENTRY _In_ PSTRING _In_ USHORT TargetNameOffset
Definition: fsrtlfuncs.h:740
InitializeListHead & localAdvHdr
Definition: fsrtlfuncs.h:1698
_In_ BOOLEAN SelfSynchronized
Definition: fsrtlfuncs.h:462
_In_ PIRP _In_opt_ PVOID _In_opt_ POPLOCK_WAIT_COMPLETE_ROUTINE _In_opt_ POPLOCK_FS_PREPOST_IRP PostIrpRoutine
Definition: fsrtlfuncs.h:676
_Must_inspect_result_ _Outptr_ PVOID _Out_opt_ PLARGE_INTEGER _In_ PFILE_OBJECT _In_ ACCESS_MASK _In_opt_ POBJECT_ATTRIBUTES ObjectAttributes
Definition: fsrtlfuncs.h:864
_Must_inspect_result_ _In_ PFILE_OBJECT _In_ FSRTL_CHANGE_BACKING_TYPE ChangeBackingType
Definition: fsrtlfuncs.h:1358
_Must_inspect_result_ _In_ LPCGUID _Outptr_opt_ PVOID _Out_opt_ ULONG * EcpContextSize
Definition: fsrtlfuncs.h:1286
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_ ULONGLONG _In_ PUNICODE_STRING _In_ PUNICODE_STRING LongName
Definition: fsrtlfuncs.h:338
_Must_inspect_result_ _In_ BOOLEAN _In_ BOOLEAN _In_ BOOLEAN LeadingBackslashPermissible
Definition: fsrtlfuncs.h:407
_Must_inspect_result_ _In_opt_ PVOID OwnerId
Definition: fsrtlfuncs.h:907
_Must_inspect_result_ _In_ LONGLONG _In_ LONGLONG _In_ LONGLONG SectorCount
Definition: fsrtlfuncs.h:481
_Must_inspect_result_ _In_ PFILE_OBJECT NewFileObject
Definition: fsrtlfuncs.h:1357
_Out_ PANSI_STRING _Out_ PANSI_STRING RemainingPart
Definition: fsrtlfuncs.h:379
_In_ PFILE_OBJECT _In_ PLARGE_INTEGER _In_ PLARGE_INTEGER _In_ PEPROCESS _In_ ULONG _In_opt_ PVOID _In_ BOOLEAN AlreadySynchronized
Definition: fsrtlfuncs.h:271
_In_ PLIST_ENTRY _In_ PSTRING _In_ USHORT _In_opt_ PSTRING _In_opt_ PSTRING NormalizedParentName
Definition: fsrtlfuncs.h:742
_Must_inspect_result_ _In_ ULONG SizeOfContext
Definition: fsrtlfuncs.h:1223
_Must_inspect_result_ _In_ WAIT_TYPE _In_opt_ PLARGE_INTEGER _In_opt_ PKWAIT_BLOCK WaitBlockArray
Definition: fsrtlfuncs.h:1153
_Must_inspect_result_ _In_ PCUNICODE_STRING Name2
Definition: fsrtlfuncs.h:796
_Must_inspect_result_ _In_ ULONG RunIndex
Definition: fsrtlfuncs.h:538
_Must_inspect_result_ _In_ ULONG _In_ FSRTL_ALLOCATE_ECP_FLAGS _In_opt_ PFSRTL_EXTRA_CREATE_PARAMETER_CLEANUP_CALLBACK CleanupCallback
Definition: fsrtlfuncs.h:1225
_Out_ PLONGLONG LargeVbn
Definition: fsrtlfuncs.h:520
NTKERNELAPI NTSTATUS NTAPI FsRtlRegisterFileSystemFilterCallbacks(_In_ struct _DRIVER_OBJECT *FilterDriverObject, _In_ PFS_FILTER_CALLBACKS Callbacks)
_In_ LONGLONG _Out_opt_ PLONGLONG _Out_opt_ PLONGLONG SectorCountFromLbn
Definition: fsrtlfuncs.h:500
_In_ LONGLONG _Out_opt_ PLONGLONG _Out_opt_ PLONGLONG _Out_opt_ PLONGLONG StartingLbn
Definition: fsrtlfuncs.h:501
_In_opt_ PCOMPLETE_LOCK_IRP_ROUTINE CompleteLockIrpRoutine
Definition: fsrtlfuncs.h:139
NTKERNELAPI VOID NTAPI FsRtlIncrementCcFastMdlReadWait(VOID)
The FsRtlAllocateResource routine is but is exported to support existing driver binaries Use ExAllocateFromNPagedLookasideList and ExInitializeResourceLite instead NTKERNELAPI PERESOURCE NTAPI FsRtlAllocateResource(VOID)
Definition: fsrtlpc.c:209
_Must_inspect_result_ _Outptr_ PVOID _Out_opt_ PLARGE_INTEGER _In_ PFILE_OBJECT _In_ ACCESS_MASK _In_opt_ POBJECT_ATTRIBUTES _In_opt_ PLARGE_INTEGER MaximumSize
Definition: fsrtlfuncs.h:865
_In_ PFAST_MUTEX FMutex
Definition: fsrtlfuncs.h:1688
_Must_inspect_result_ _In_opt_ PLARGE_INTEGER Timeout
Definition: fsrtlfuncs.h:1139
NTKERNELAPI VOID NTAPI FsRtlIncrementCcFastReadNotPossible(VOID)
Definition: fastio.c:34
_In_ PLIST_ENTRY _In_ PSTRING _In_ USHORT _In_opt_ PSTRING _In_opt_ PSTRING _In_ ULONG _In_ ULONG _In_opt_ PVOID _In_opt_ PVOID FilterContext
Definition: fsrtlfuncs.h:746
_In_ PLIST_ENTRY _In_ PVOID _In_ PSTRING FullDirectoryName
Definition: fsrtlfuncs.h:724
_In_ ULONGLONG DirectoryKey
Definition: fsrtlfuncs.h:336
_Must_inspect_result_ _In_ USHORT _Out_ USHORT * NewLength
Definition: fsrtlfuncs.h:1198
_In_ PLIST_ENTRY _In_ PVOID _In_ PSTRING _In_ BOOLEAN _In_ BOOLEAN _In_ ULONG _In_opt_ PIRP NotifyIrp
Definition: fsrtlfuncs.h:728
Obsolete NTKERNELAPI VOID NTAPI FsRtlInitializeMcb(_Out_ PMCB Mcb, _In_ POOL_TYPE PoolType)
_Must_inspect_result_ _In_ ULONG Level
Definition: fsrtlfuncs.h:1163
_Must_inspect_result_ _Outptr_ PECP_LIST * EcpList
Definition: fsrtlfuncs.h:1207
NTKERNELAPI NTSTATUS NTAPI FsRtlNormalizeNtstatus(_In_ NTSTATUS Exception, _In_ NTSTATUS GenericException)
_Must_inspect_result_ _In_ PUNICODE_STRING _In_ BOOLEAN _In_opt_ PWCHAR UpcaseTable
Definition: fsrtlfuncs.h:809
_In_ PLIST_ENTRY _In_ PVOID _In_ PSTRING _In_ BOOLEAN _In_ BOOLEAN _In_ ULONG CompletionFilter
Definition: fsrtlfuncs.h:727
_Must_inspect_result_ _In_ BOOLEAN Restart
Definition: fsrtlfuncs.h:257
_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
Definition: fsrtlfuncs.h:866
_Must_inspect_result_ _In_ PCUNICODE_STRING RedirectorDeviceName
Definition: fsrtlfuncs.h:836
_In_ PLARGE_INTEGER _In_ ULONG _In_ BOOLEAN _In_ ULONG LockKey
Definition: fsrtlfuncs.h:19
_Must_inspect_result_ ULONG _In_ FSRTL_ALLOCATE_ECP_FLAGS _In_opt_ PFSRTL_EXTRA_CREATE_PARAMETER_CLEANUP_CALLBACK _Inout_ PVOID _Outptr_ PVOID * EcpContext
Definition: fsrtlfuncs.h:1266
_In_ ULONGLONG _In_ PUNICODE_STRING _In_ PUNICODE_STRING _In_ BOOLEAN _In_ ULONG DataLength
Definition: fsrtlfuncs.h:340
_In_ ULONG EventCode
Definition: fsrtlfuncs.h:700
_In_ PLIST_ENTRY _In_ PVOID _In_ PSTRING _In_ BOOLEAN WatchTree
Definition: fsrtlfuncs.h:725
$if(_NTIFS_) _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) NTKERNELAPI BOOLEAN NTAPI FsRtlCopyRead(_In_ PFILE_OBJECT FileObject
Definition: cctypes.h:1
_In_ PLIST_ENTRY _In_ PVOID _In_ PSTRING _In_ BOOLEAN _In_ BOOLEAN IgnoreBuffer
Definition: fsrtlfuncs.h:726
_In_ LONGLONG Vbn
Definition: fsrtlfuncs.h:470
NTKERNELAPI VOID NTAPI FsRtlIncrementCcFastReadNoWait(VOID)
Definition: fastio.c:54
NTKERNELAPI ULONG NTAPI FsRtlQueryMaximumVirtualDiskNestingLevel(VOID)
_Must_inspect_result_ _Outptr_ PVOID _Out_opt_ PLARGE_INTEGER SectionFileSize
Definition: fsrtlfuncs.h:861
_In_ ULONGLONG _In_ PUNICODE_STRING ShortName
Definition: fsrtlfuncs.h:337
_Out_ PANSI_STRING FirstPart
Definition: fsrtlfuncs.h:378
_Must_inspect_result_ _In_ ULONG _Out_writes_bytes_ pBufferSize PVOID _Inout_ PULONG pBufferSize
Definition: fsrtlfuncs.h:1165
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_ PCUNICODE_STRING _In_ BOOLEAN IgnoreCase
Definition: fsrtlfuncs.h:797
_Must_inspect_result_ _In_ PLARGE_INTEGER _In_ PLARGE_INTEGER _In_ ULONG _In_ PFILE_OBJECT _In_ PVOID Process
Definition: fsrtlfuncs.h:223
_Must_inspect_result_ _In_ USHORT PathLength
Definition: fsrtlfuncs.h:1197
_Must_inspect_result_ _In_ LONGLONG _In_ LONGLONG Lbn
Definition: fsrtlfuncs.h:480
_Must_inspect_result_ NTKERNELAPI BOOLEAN NTAPI FsRtlIsTotalDeviceFailure(_In_ NTSTATUS Status)
_Must_inspect_result_ _Out_ PLARGE_INTEGER FileSize
Definition: fsrtlfuncs.h:108
_Must_inspect_result_ _In_ BOOLEAN WildCardsPermissible
Definition: fsrtlfuncs.h:405
_Must_inspect_result_ _In_ ULONG _Out_writes_bytes_ pBufferSize PVOID pBuffer
Definition: fsrtlfuncs.h:1164
const UCHAR *const * FsRtlLegalAnsiCharacterArray
Definition: fsrtlpc.c:154
_In_ PLIST_ENTRY _In_ PSTRING FullTargetName
Definition: fsrtlfuncs.h:739
_Must_inspect_result_ _Outptr_ PVOID * SectionObject
Definition: fsrtlfuncs.h:860
_In_ PLARGE_INTEGER FileOffset
Definition: fsrtlfuncs.h:16
NTKERNELAPI NTSTATUS NTAPI FsRtlInitializeExtraCreateParameterList(_Inout_ PECP_LIST EcpList)
_In_opt_ PFILE_OBJECT Fo2
Definition: fsrtlfuncs.h:1477
_In_ ULONGLONG _In_ PUNICODE_STRING _In_ PUNICODE_STRING _In_ BOOLEAN KeyByShortName
Definition: fsrtlfuncs.h:339
_In_ PLIST_ENTRY NotifyList
Definition: fsrtlfuncs.h:722
_In_ LONGLONG _Out_opt_ PLONGLONG _Out_opt_ PLONGLONG _Out_opt_ PLONGLONG _Out_opt_ PLONGLONG SectorCountFromStartingLbn
Definition: fsrtlfuncs.h:502
_In_ PLIST_ENTRY _In_ PSTRING _In_ USHORT _In_opt_ PSTRING StreamName
Definition: fsrtlfuncs.h:741
_Out_ PLONGLONG _Out_ PLONGLONG LargeLbn
Definition: fsrtlfuncs.h:521
_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
Definition: fsrtlfuncs.h:730
_Must_inspect_result_ _In_opt_ PIO_STACK_LOCATION IrpSp
Definition: fsrtlfuncs.h:1098
_In_ PLIST_ENTRY _In_ PVOID FsContext
Definition: fsrtlfuncs.h:723
_Must_inspect_result_ _In_ PFSRTL_PER_STREAM_CONTEXT Ptr
Definition: fsrtlfuncs.h:898
_Must_inspect_result_ _In_opt_ PVOID _Out_opt_ LPGUID _Outptr_opt_ PVOID * NextEcpContext
Definition: fsrtlfuncs.h:1326
_Must_inspect_result_ _In_opt_ PVOID _Out_opt_ LPGUID NextEcpType
Definition: fsrtlfuncs.h:1325
_Must_inspect_result_ _In_ PCUNICODE_STRING _In_ BOOLEAN MailslotsSupported
Definition: fsrtlfuncs.h:837
_Must_inspect_result_ NTKERNELAPI BOOLEAN NTAPI FsRtlIsNtstatusExpected(_In_ NTSTATUS Ntstatus)
NTKERNELAPI VOID NTAPI FsRtlIncrementCcFastReadResourceMiss(VOID)
Definition: fastio.c:24
_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)
_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
Definition: fsrtlfuncs.h:889
#define FsRtlFastLock(A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11)
Definition: fsrtlfuncs.h:1581
_Must_inspect_result_ ULONG _In_ FSRTL_ALLOCATE_ECP_FLAGS _In_opt_ PFSRTL_EXTRA_CREATE_PARAMETER_CLEANUP_CALLBACK _Inout_ PVOID LookasideList
Definition: fsrtlfuncs.h:1265
_In_ PLIST_ENTRY _In_ PSTRING _In_ USHORT _In_opt_ PSTRING _In_opt_ PSTRING _In_ ULONG FilterMatch
Definition: fsrtlfuncs.h:743
_Must_inspect_result_ _In_ LPCGUID EcpType
Definition: fsrtlfuncs.h:1284
VOID(* PFSRTL_EXTRA_CREATE_PARAMETER_CLEANUP_CALLBACK)(_Inout_ PVOID EcpContext, _In_ LPCGUID EcpType)
Definition: fsrtltypes.h:135
LBN * PLBN
Definition: fsrtltypes.h:5
NTSTATUS(NTAPI * PCOMPLETE_LOCK_IRP_ROUTINE)(_In_ PVOID Context, _In_ PIRP Irp)
Definition: fsrtltypes.h:183
struct _FSRTL_ADVANCED_FCB_HEADER * PFSRTL_ADVANCED_FCB_HEADER
ULONG FSRTL_ECP_LOOKASIDE_FLAGS
Definition: fsrtltypes.h:143
VOID(NTAPI * PUNLOCK_ROUTINE)(_In_ PVOID Context, _In_ PFILE_LOCK_INFO FileLockInfo)
Definition: fsrtltypes.h:198
#define OPLOCK_FLAG_BACK_OUT_ATOMIC_OPLOCK
Definition: fsrtltypes.h:268
#define FSRTL_ECP_LOOKASIDE_FLAG_NONPAGED_POOL
Definition: fsrtltypes.h:120
BOOLEAN(NTAPI * PCHECK_FOR_TRAVERSE_ACCESS)(_In_ PVOID NotifyContext, _In_opt_ PVOID TargetContext, _In_ PSECURITY_SUBJECT_CONTEXT SubjectContext)
Definition: fsrtltypes.h:291
#define FSRTL_FLAG_ADVANCED_HEADER
Definition: fsrtltypes.h:51
#define FSRTL_FCB_HEADER_V1
Definition: fsrtltypes.h:43
VOID(NTAPI * PFSRTL_STACK_OVERFLOW_ROUTINE)(_In_ PVOID Context, _In_ PKEVENT Event)
Definition: fsrtltypes.h:105
ULONG VBN
Definition: fsrtltypes.h:7
BOOLEAN(NTAPI * PFILTER_REPORT_CHANGE)(_In_ PVOID NotifyContext, _In_ PVOID FilterContext)
Definition: fsrtltypes.h:297
#define FSRTL_FLAG2_SUPPORTS_FILTER_CONTEXTS
Definition: fsrtltypes.h:55
VOID(NTAPI * POPLOCK_FS_PREPOST_IRP)(_In_ PVOID Context, _In_ PIRP Irp)
Definition: fsrtltypes.h:258
#define FSRTL_FCB_HEADER_V0
Definition: fsrtltypes.h:42
VOID(NTAPI * POPLOCK_WAIT_COMPLETE_ROUTINE)(_In_ PVOID Context, _In_ PIRP Irp)
Definition: fsrtltypes.h:253
enum _FSRTL_CHANGE_BACKING_TYPE FSRTL_CHANGE_BACKING_TYPE
ULONG FSRTL_ALLOCATE_ECP_FLAGS
Definition: fsrtltypes.h:142
ULONG FSRTL_ALLOCATE_ECPLIST_FLAGS
Definition: fsrtltypes.h:141
VBN * PVBN
Definition: fsrtltypes.h:8
#define MCB_FLAG_RAISE_ON_ALLOCATION_FAILURE
Definition: fsrtltypes.h:233
ULONG Handle
Definition: gdb_input.c:15
Status
Definition: gdiplustypes.h:25
#define _NTIFS_
Definition: ifssupp.h:20
int jpeg_marker_parser_method routine
Definition: jpeglib.h:1093
VOID NTAPI FsRtlRemoveLargeMcbEntry(IN PLARGE_MCB Mcb, IN LONGLONG Vbn, IN LONGLONG SectorCount)
Definition: largemcb.c:905
BOOLEAN NTAPI FsRtlSplitBaseMcb(IN PBASE_MCB OpaqueMcb, IN LONGLONG Vbn, IN LONGLONG Amount)
Definition: largemcb.c:962
VOID NTAPI FsRtlTruncateLargeMcb(IN PLARGE_MCB Mcb, IN LONGLONG Vbn)
Definition: largemcb.c:1059
BOOLEAN NTAPI FsRtlRemoveBaseMcbEntry(IN PBASE_MCB OpaqueMcb, IN LONGLONG Vbn, IN LONGLONG SectorCount)
Definition: largemcb.c:795
VOID NTAPI FsRtlInitializeBaseMcb(IN PBASE_MCB OpaqueMcb, IN POOL_TYPE PoolType)
Definition: largemcb.c:420
BOOLEAN NTAPI FsRtlAddLargeMcbEntry(IN PLARGE_MCB Mcb, IN LONGLONG Vbn, IN LONGLONG Lbn, IN LONGLONG SectorCount)
Definition: largemcb.c:288
BOOLEAN NTAPI FsRtlLookupLastLargeMcbEntryAndIndex(IN PLARGE_MCB OpaqueMcb, OUT PLONGLONG LargeVbn, OUT PLONGLONG LargeLbn, OUT PULONG Index)
Definition: largemcb.c:671
BOOLEAN NTAPI FsRtlLookupLastBaseMcbEntryAndIndex(IN PBASE_MCB OpaqueMcb, IN OUT PLONGLONG LargeVbn, IN OUT PLONGLONG LargeLbn, IN OUT PULONG Index)
Definition: largemcb.c:649
BOOLEAN NTAPI FsRtlGetNextBaseMcbEntry(IN PBASE_MCB OpaqueMcb, IN ULONG RunIndex, OUT PLONGLONG Vbn, OUT PLONGLONG Lbn, OUT PLONGLONG SectorCount)
Definition: largemcb.c:332
VOID NTAPI FsRtlResetBaseMcb(IN PBASE_MCB OpaqueMcb)
Definition: largemcb.c:921
VOID NTAPI FsRtlUninitializeLargeMcb(IN PLARGE_MCB Mcb)
Definition: largemcb.c:1096
VOID NTAPI FsRtlUninitializeBaseMcb(IN PBASE_MCB Mcb)
Definition: largemcb.c:1074
VOID NTAPI FsRtlInitializeLargeMcb(IN PLARGE_MCB Mcb, IN POOL_TYPE PoolType)
Definition: largemcb.c:451
BOOLEAN NTAPI FsRtlLookupLastLargeMcbEntry(IN PLARGE_MCB Mcb, OUT PLONGLONG Vbn, OUT PLONGLONG Lbn)
Definition: largemcb.c:718
VOID NTAPI FsRtlResetLargeMcb(IN PLARGE_MCB Mcb, IN BOOLEAN SelfSynchronized)
Definition: largemcb.c:943
BOOLEAN NTAPI FsRtlAddBaseMcbEntry(IN PBASE_MCB OpaqueMcb, IN LONGLONG Vbn, IN LONGLONG Lbn, IN LONGLONG SectorCount)
Definition: largemcb.c:135
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)
Definition: largemcb.c:505
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)
Definition: largemcb.c:560
ULONG NTAPI FsRtlNumberOfRunsInLargeMcb(IN PLARGE_MCB Mcb)
Definition: largemcb.c:765
BOOLEAN NTAPI FsRtlLookupLastBaseMcbEntry(IN PBASE_MCB OpaqueMcb, OUT PLONGLONG Vbn, OUT PLONGLONG Lbn)
Definition: largemcb.c:697
VOID NTAPI FsRtlTruncateBaseMcb(IN PBASE_MCB OpaqueMcb, IN LONGLONG Vbn)
Definition: largemcb.c:1046
ULONG NTAPI FsRtlNumberOfRunsInBaseMcb(IN PBASE_MCB OpaqueMcb)
Definition: largemcb.c:742
BOOLEAN NTAPI FsRtlGetNextLargeMcbEntry(IN PLARGE_MCB Mcb, IN ULONG RunIndex, OUT PLONGLONG Vbn, OUT PLONGLONG Lbn, OUT PLONGLONG SectorCount)
Definition: largemcb.c:392
BOOLEAN NTAPI FsRtlSplitLargeMcb(IN PLARGE_MCB Mcb, IN LONGLONG Vbn, IN LONGLONG Amount)
Definition: largemcb.c:1022
BOOLEAN NTAPI FsRtlLookupMcbEntry(IN PMCB Mcb, IN VBN Vbn, OUT PLBN Lbn, OUT PULONG SectorCount OPTIONAL, OUT PULONG Index)
Definition: mcb.c:113
BOOLEAN NTAPI FsRtlAddMcbEntry(IN PMCB Mcb, IN VBN Vbn, IN LBN Lbn, IN ULONG SectorCount)
Definition: mcb.c:22
BOOLEAN NTAPI FsRtlLookupLastMcbEntry(IN PMCB Mcb, OUT PVBN Vbn, OUT PLBN Lbn)
Definition: mcb.c:86
BOOLEAN NTAPI FsRtlGetNextMcbEntry(IN PMCB Mcb, IN ULONG RunIndex, OUT PVBN Vbn, OUT PLBN Lbn, OUT PULONG SectorCount)
Definition: mcb.c:40
VOID NTAPI FsRtlRemoveMcbEntry(IN PMCB Mcb, IN VBN Vbn, IN ULONG SectorCount)
Definition: mcb.c:158
VOID NTAPI FsRtlTruncateMcb(IN PMCB Mcb, IN VBN Vbn)
Definition: mcb.c:173
ULONG NTAPI FsRtlNumberOfRunsInMcb(IN PMCB Mcb)
Definition: mcb.c:146
VOID NTAPI FsRtlUninitializeMcb(IN PMCB Mcb)
Definition: mcb.c:186
#define _Outptr_result_bytebuffer_(size)
Definition: ms_sal.h:472
#define _Out_opt_
Definition: ms_sal.h:346
#define _In_reads_bytes_(size)
Definition: ms_sal.h:321
#define _Inout_
Definition: ms_sal.h:378
#define _Out_writes_bytes_(size)
Definition: ms_sal.h:350
#define _Out_writes_bytes_to_(size, count)
Definition: ms_sal.h:360
#define _Outptr_result_maybenull_
Definition: ms_sal.h:428
#define _Outptr_opt_
Definition: ms_sal.h:429
#define _Outptr_
Definition: ms_sal.h:427
#define _Must_inspect_result_
Definition: ms_sal.h:558
#define _Inout_updates_bytes_(size)
Definition: ms_sal.h:399
#define _Out_
Definition: ms_sal.h:345
#define _In_reads_opt_(size)
Definition: ms_sal.h:320
#define _When_(expr, annos)
Definition: ms_sal.h:254
#define _In_
Definition: ms_sal.h:308
#define _In_opt_
Definition: ms_sal.h:309
#define _In_reads_(size)
Definition: ms_sal.h:319
struct @1664::@1665 driver
__in UCHAR __in POWER_STATE __in_opt PVOID __in PIO_STATUS_BLOCK IoStatus
Definition: mxum.h:159
int Count
Definition: noreturn.cpp:7
ULONG ACCESS_MASK
Definition: nt_native.h:40
CONST WCHAR * PCWCH
Definition: ntbasedef.h:411
__GNU_EXTENSION typedef __int64 * PLONGLONG
Definition: ntbasedef.h:382
_In_ ULONG _In_ ULONG _In_ ULONG Length
Definition: ntddpcm.h:102
enum _WAIT_TYPE WAIT_TYPE
BOOLEAN NTAPI FsRtlMdlWriteCompleteDev(IN PFILE_OBJECT FileObject, IN PLARGE_INTEGER FileOffset, IN PMDL MdlChain, IN PDEVICE_OBJECT DeviceObject)
Definition: fastio.c:1198
BOOLEAN NTAPI FsRtlMdlReadCompleteDev(IN PFILE_OBJECT FileObject, IN PMDL MemoryDescriptorList, IN PDEVICE_OBJECT DeviceObject)
Definition: fastio.c:1011
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)
Definition: fastio.c:64
NTSTATUS NTAPI FsRtlGetFileSize(IN PFILE_OBJECT FileObject, IN OUT PLARGE_INTEGER FileSize)
Definition: fastio.c:815
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)
Definition: fastio.c:264
VOID NTAPI FsRtlReleaseFile(IN PFILE_OBJECT FileObject)
Definition: fastio.c:1659
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)
Definition: fastio.c:1272
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)
Definition: fastio.c:1025
VOID NTAPI FsRtlAcquireFileExclusive(IN PFILE_OBJECT FileObject)
Definition: fastio.c:1634
BOOLEAN NTAPI FsRtlIsNameInExpression(IN PUNICODE_STRING Expression, IN PUNICODE_STRING Name, IN BOOLEAN IgnoreCase, IN PWCHAR UpcaseTable OPTIONAL)
Definition: name.c:514
BOOLEAN NTAPI FsRtlAreNamesEqual(IN PCUNICODE_STRING Name1, IN PCUNICODE_STRING Name2, IN BOOLEAN IgnoreCase, IN PCWCH UpcaseTable OPTIONAL)
Definition: name.c:296
BOOLEAN NTAPI FsRtlDoesNameContainWildCards(IN PUNICODE_STRING Name)
Definition: name.c:464
VOID NTAPI FsRtlDissectName(IN UNICODE_STRING Name, OUT PUNICODE_STRING FirstPart, OUT PUNICODE_STRING RemainingPart)
Definition: name.c:398
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)
Definition: notify.c:1552
VOID NTAPI FsRtlNotifyUninitializeSync(IN PNOTIFY_SYNC *NotifySync)
Definition: notify.c:1668
VOID NTAPI FsRtlNotifyCleanup(IN PNOTIFY_SYNC NotifySync, IN PLIST_ENTRY NotifyList, IN PVOID FsContext)
Definition: notify.c:659
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)
Definition: notify.c:773
VOID NTAPI FsRtlNotifyInitializeSync(IN PNOTIFY_SYNC *NotifySync)
Definition: notify.c:1590
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)
Definition: notify.c:997
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)
Definition: notify.c:1487
NTSTATUS NTAPI FsRtlNotifyVolumeEvent(IN PFILE_OBJECT FileObject, IN ULONG EventCode)
Definition: pnp.c:38
PVOID *typedef PHANDLE
Definition: ntsecpkg.h:455
BOOLEAN NTAPI FsRtlCurrentBatchOplock(IN POPLOCK Oplock)
Definition: oplock.c:1364
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)
Definition: oplock.c:901
NTSTATUS NTAPI FsRtlOplockFsctrl(IN POPLOCK Oplock, IN PIRP Irp, IN ULONG OpenCount)
Definition: oplock.c:1430
BOOLEAN NTAPI FsRtlOplockIsFastIoPossible(IN POPLOCK Oplock)
Definition: oplock.c:1564
VOID NTAPI FsRtlUninitializeOplock(IN POPLOCK Oplock)
Definition: oplock.c:1600
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)
Definition: oplock.c:1170
VOID NTAPI FsRtlInitializeOplock(IN OUT POPLOCK Oplock)
Definition: oplock.c:1400
unsigned short USHORT
Definition: pedump.c:61
$endif(_WDMDDK_) $if(_NTDDK_) typedef struct _NEON128
Definition: ke.h:202
NTKERNELAPI NTSTATUS NTAPI FsRtlGetNextExtraCreateParameter(IN PECP_LIST EcpList, IN PVOID CurrentEcpContext, OUT LPGUID NextEcpType OPTIONAL, OUT PVOID *NextEcpContext, OUT PULONG NextEcpContextSize OPTIONAL)
Definition: fsrtl.c:283
NTKERNELAPI NTSTATUS NTAPI FsRtlValidateReparsePointBuffer(IN ULONG BufferLength, IN PREPARSE_DATA_BUFFER ReparseBuffer)
Definition: fsrtl.c:173
NTKERNELAPI NTSTATUS NTAPI FsRtlGetEcpListFromIrp(IN PIRP Irp, OUT PECP_LIST *EcpList)
Definition: fsrtl.c:273
WaitType
Definition: shlextdbg.cpp:18
VOID NTAPI FsRtlPostStackOverflow(IN PVOID Context, IN PKEVENT Event, IN PFSRTL_STACK_OVERFLOW_ROUTINE StackOverflowRoutine)
Definition: stackovf.c:232
VOID NTAPI FsRtlPostPagingFileStackOverflow(IN PVOID Context, IN PKEVENT Event, IN PFSRTL_STACK_OVERFLOW_ROUTINE StackOverflowRoutine)
Definition: stackovf.c:206
Definition: fatfs.h:173
Definition: typedefs.h:120
VOID NTAPI FsRtlInitializeTunnelCache(IN PTUNNEL Cache)
Definition: tunnel.c:892
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)
Definition: tunnel.c:342
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)
Definition: tunnel.c:766
VOID NTAPI FsRtlDeleteTunnelCache(IN PTUNNEL Cache)
Definition: tunnel.c:691
VOID NTAPI FsRtlDeleteKeyFromTunnelCache(IN PTUNNEL Cache, IN ULONGLONG DirectoryKey)
Definition: tunnel.c:589
uint16_t * PWSTR
Definition: typedefs.h:56
uint32_t * PULONG_PTR
Definition: typedefs.h:65
uint32_t * PULONG
Definition: typedefs.h:59
INT POOL_TYPE
Definition: typedefs.h:78
int64_t LONGLONG
Definition: typedefs.h:68
#define NTAPI
Definition: typedefs.h:36
ULONG_PTR SIZE_T
Definition: typedefs.h:80
uint16_t * PWCHAR
Definition: typedefs.h:56
uint32_t ULONG
Definition: typedefs.h:59
uint64_t ULONGLONG
Definition: typedefs.h:67
HANDLE MupHandle
Definition: unc.c:21
VOID NTAPI FsRtlDeregisterUncProvider(IN HANDLE Handle)
Definition: unc.c:202
NTSTATUS NTAPI FsRtlRegisterUncProvider(OUT PHANDLE Handle, IN PCUNICODE_STRING RedirectorDeviceName, IN BOOLEAN MailslotsSupported)
Definition: unc.c:280
_Must_inspect_result_ _In_ WDFCOLLECTION _In_ WDFOBJECT Object
_In_ WDFCOLLECTION _In_ ULONG Index
_In_ PDEVICE_OBJECT DeviceObject
Definition: wdfdevice.h:2055
_Must_inspect_result_ _In_ WDFDEVICE _In_ BOOLEAN _In_opt_ PVOID Tag
Definition: wdfdevice.h:4065
_Must_inspect_result_ _In_ WDFDEVICE _In_ ULONG _In_ ACCESS_MASK DesiredAccess
Definition: wdfdevice.h:2658
_Must_inspect_result_ _In_ WDFDEVICE _In_ DEVICE_REGISTRY_PROPERTY _In_ _Strict_type_match_ POOL_TYPE PoolType
Definition: wdfdevice.h:3815
_In_ WDFREQUEST _In_ WDFFILEOBJECT FileObject
Definition: wdfdevice.h:550
_In_ WDF_SPECIAL_FILE_TYPE NotificationType
Definition: wdfdevice.h:1024
_Must_inspect_result_ _In_ WDFDEVICE _In_ PWDF_DEVICE_PROPERTY_DATA _In_ DEVPROPTYPE _In_ ULONG Size
Definition: wdfdevice.h:4533
_Must_inspect_result_ _In_ WDFDEVICE _In_ DEVICE_REGISTRY_PROPERTY _In_ ULONG BufferLength
Definition: wdfdevice.h:3771
_In_ WDFDPC _In_ BOOLEAN Wait
Definition: wdfdpc.h:170
_In_ WDFIOTARGET _In_ _Strict_type_match_ WDF_IO_TARGET_SENT_IO_ACTION Action
Definition: wdfiotarget.h:510
_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
Definition: wdfmemory.h:414
_Must_inspect_result_ _In_opt_ PWDF_OBJECT_ATTRIBUTES _In_ _Strict_type_match_ POOL_TYPE _In_opt_ ULONG PoolTag
Definition: wdfmemory.h:164
_In_ WDFREQUEST _In_opt_ PFN_WDF_REQUEST_COMPLETION_ROUTINE CompletionRoutine
Definition: wdfrequest.h:895
#define FORCEINLINE
Definition: wdftypes.h:67
#define __CREATE_NTOS_DATA_IMPORT_ALIAS(_Name)
#define NTKERNELAPI
_Must_inspect_result_ _In_ ULONG Flags
Definition: wsk.h:170
* PFAST_MUTEX
Definition: extypes.h:17
_Must_inspect_result_ __drv_aliasesMem PDEVICE_OBJECT _In_ PDEVICE_OBJECT TargetDevice
Definition: iofuncs.h:691
enum _FS_FILTER_STREAM_FO_NOTIFICATION_TYPE FS_FILTER_STREAM_FO_NOTIFICATION_TYPE
* PFILE_OBJECT
Definition: iotypes.h:1998
unsigned char UCHAR
Definition: xmlstorage.h:181