⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 fsrtl.h

📁 winNT技术操作系统,国外开放的原代码和LIUX一样
💻 H
字号:
#ifndef __INCLUDE_INTERNAL_IFS_H
#define __INCLUDE_INTERNAL_IFS_H

typedef struct _FILE_LOCK_GRANTED
{
    LIST_ENTRY            ListEntry;
    FILE_LOCK_INFO            Lock;
    PVOID             UnlockContext;
} FILE_LOCK_GRANTED, *PFILE_LOCK_GRANTED;

typedef struct _FILE_LOCK_TOC
{
    KSPIN_LOCK            SpinLock;
    LIST_ENTRY            GrantedListHead;
    LIST_ENTRY            PendingListHead;
} FILE_LOCK_TOC, *PFILE_LOCK_TOC;

VOID
INIT_FUNCTION
NTAPI
FsRtlpInitNotifyImplementation(VOID);

VOID 
NTAPI
FsRtlInitSystem(VOID);

VOID
NTAPI
FsRtlpFileLockCancelRoutine(
    IN PDEVICE_OBJECT DeviceObject,
    IN PIRP Irp
    );

BOOLEAN
FASTCALL
FsRtlpCheckLockForReadOrWriteAccess(
    IN PFILE_LOCK FileLock,
    IN PLARGE_INTEGER FileOffset,
    IN PLARGE_INTEGER Length,
    IN ULONG Key,
    IN PFILE_OBJECT FileObject,
    IN PEPROCESS Process,
    IN BOOLEAN Read
);

NTSTATUS
FASTCALL
FsRtlpFastUnlockAllByKey(
    IN PFILE_LOCK FileLock,
    IN PFILE_OBJECT FileObject,
    IN PEPROCESS Process,
    IN ULONG Key,
    IN BOOLEAN UseKey,
    IN PVOID Context OPTIONAL
);

BOOLEAN
FASTCALL
FsRtlpAddLock(
    IN PFILE_LOCK_TOC LockToc,
    IN PFILE_OBJECT FileObject,
    IN PLARGE_INTEGER FileOffset,
    IN PLARGE_INTEGER Length,
    IN PEPROCESS Process,
    IN ULONG Key,
    IN BOOLEAN ExclusiveLock,
    IN PVOID UnlockContext
);

VOID
FASTCALL
FsRtlpCompletePendingLocks(
    IN PFILE_LOCK FileLock,
    IN PFILE_LOCK_TOC LockToc,
    IN OUT PKIRQL  oldirql,
    IN PVOID Context
);

NTSTATUS
FASTCALL
FsRtlpUnlockSingle(
    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 CallUnlockRoutine
);

VOID
FASTCALL
FsRtlpDumpFileLocks(IN PFILE_LOCK FileLock);

#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -