mirror of
https://github.com/reactos/reactos.git
synced 2025-08-05 18:23:07 +00:00
Git conversion: Make reactos the root directory, move rosapps, rostests, wallpapers into modules, and delete rossubsys.
This commit is contained in:
parent
b94e2d8ca0
commit
c2c66aff7d
24198 changed files with 0 additions and 37285 deletions
142
ntoskrnl/include/internal/fsrtl.h
Normal file
142
ntoskrnl/include/internal/fsrtl.h
Normal file
|
@ -0,0 +1,142 @@
|
|||
/*
|
||||
* PROJECT: ReactOS Kernel
|
||||
* LICENSE: GPL - See COPYING in the top level directory
|
||||
* FILE: ntoskrnl/include/internal/fsrtl.h
|
||||
* PURPOSE: Internal header for the File System Runtime Library
|
||||
* PROGRAMMERS: Alex Ionescu (alex.ionescu@reactos.org)
|
||||
*/
|
||||
|
||||
//
|
||||
// Define this if you want debugging support
|
||||
//
|
||||
#define _FSRTL_DEBUG_ 0x00
|
||||
|
||||
//
|
||||
// These define the Debug Masks Supported
|
||||
//
|
||||
#define FSRTL_FASTIO_DEBUG 0x01
|
||||
#define FSRTL_OPLOCK_DEBUG 0x02
|
||||
#define FSRTL_TUNNEL_DEBUG 0x04
|
||||
#define FSRTL_MCB_DEBUG 0x08
|
||||
#define FSRTL_NAME_DEBUG 0x10
|
||||
#define FSRTL_NOTIFY_DEBUG 0x20
|
||||
#define FSRTL_FILELOCK_DEBUG 0x40
|
||||
#define FSRTL_UNC_DEBUG 0x80
|
||||
#define FSRTL_FILTER_DEBUG 0x100
|
||||
#define FSRTL_CONTEXT_DEBUG 0x200
|
||||
|
||||
//
|
||||
// Debug/Tracing support
|
||||
//
|
||||
#if _FSRTL_DEBUG_
|
||||
#ifdef NEW_DEBUG_SYSTEM_IMPLEMENTED // enable when Debug Filters are implemented
|
||||
#define FSTRACE DbgPrintEx
|
||||
#else
|
||||
#define FSTRACE(x, ...) \
|
||||
if (x & FsRtlpTraceLevel) DbgPrint(__VA_ARGS__)
|
||||
#endif
|
||||
#else
|
||||
#define FSTRACE(x, ...) DPRINT(__VA_ARGS__)
|
||||
#endif
|
||||
|
||||
//
|
||||
// Number of internal ERESOURCE structures allocated for callers to request
|
||||
//
|
||||
#define FSRTL_MAX_RESOURCES 16
|
||||
|
||||
//
|
||||
// Number of maximum pair count per MCB
|
||||
//
|
||||
#define MAXIMUM_PAIR_COUNT 15
|
||||
|
||||
//
|
||||
// Notifications flags
|
||||
//
|
||||
#define WATCH_TREE 0x01
|
||||
#define NOTIFY_IMMEDIATELY 0x02
|
||||
#define CLEANUP_IN_PROCESS 0x04
|
||||
#define NOTIFY_LATER 0x08
|
||||
#define WATCH_ROOT 0x10
|
||||
#define DELETE_IN_PROCESS 0x20
|
||||
|
||||
//
|
||||
// Internal structure for NOTIFY_SYNC
|
||||
//
|
||||
typedef struct _REAL_NOTIFY_SYNC
|
||||
{
|
||||
FAST_MUTEX FastMutex;
|
||||
ULONG_PTR OwningThread;
|
||||
ULONG OwnerCount;
|
||||
} REAL_NOTIFY_SYNC, * PREAL_NOTIFY_SYNC;
|
||||
|
||||
//
|
||||
// Internal structure for notifications
|
||||
//
|
||||
typedef struct _NOTIFY_CHANGE
|
||||
{
|
||||
PREAL_NOTIFY_SYNC NotifySync;
|
||||
PVOID FsContext;
|
||||
PVOID StreamID;
|
||||
PCHECK_FOR_TRAVERSE_ACCESS TraverseCallback;
|
||||
PSECURITY_SUBJECT_CONTEXT SubjectContext;
|
||||
PSTRING FullDirectoryName;
|
||||
LIST_ENTRY NotifyList;
|
||||
LIST_ENTRY NotifyIrps;
|
||||
PFILTER_REPORT_CHANGE FilterCallback;
|
||||
USHORT Flags;
|
||||
UCHAR CharacterSize;
|
||||
ULONG CompletionFilter;
|
||||
PVOID AllocatedBuffer;
|
||||
PVOID Buffer;
|
||||
ULONG BufferLength;
|
||||
ULONG ThisBufferLength;
|
||||
ULONG DataLength;
|
||||
ULONG LastEntry;
|
||||
ULONG ReferenceCount;
|
||||
PEPROCESS OwningProcess;
|
||||
} NOTIFY_CHANGE, *PNOTIFY_CHANGE;
|
||||
|
||||
//
|
||||
// Internal structure for MCB Mapping pointer
|
||||
//
|
||||
typedef struct _INT_MAPPING
|
||||
{
|
||||
VBN Vbn;
|
||||
LBN Lbn;
|
||||
} INT_MAPPING, *PINT_MAPPING;
|
||||
|
||||
//
|
||||
// Initialization Routines
|
||||
//
|
||||
VOID
|
||||
NTAPI
|
||||
FsRtlInitializeLargeMcbs(
|
||||
VOID
|
||||
);
|
||||
|
||||
VOID
|
||||
NTAPI
|
||||
FsRtlInitializeTunnels(
|
||||
VOID
|
||||
);
|
||||
|
||||
//
|
||||
// File contexts Routines
|
||||
//
|
||||
VOID
|
||||
NTAPI
|
||||
FsRtlPTeardownPerFileObjectContexts(
|
||||
IN PFILE_OBJECT FileObject
|
||||
);
|
||||
|
||||
BOOLEAN
|
||||
NTAPI
|
||||
FsRtlInitSystem(
|
||||
VOID
|
||||
);
|
||||
|
||||
//
|
||||
// Global data inside the File System Runtime Library
|
||||
//
|
||||
extern PERESOURCE FsRtlPagingIoResources;
|
||||
extern PAGED_LOOKASIDE_LIST FsRtlFileLockLookasideList;
|
Loading…
Add table
Add a link
Reference in a new issue