You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
205 lines
4.6 KiB
205 lines
4.6 KiB
|
|
typedef REDIR_STATISTICS MRX_DAV_STATISTICS;
|
|
typedef PREDIR_STATISTICS PMRX_DAV_STATISTICS;
|
|
|
|
extern MRX_DAV_STATISTICS MRxDAVStatistics;
|
|
|
|
VOID
|
|
MRxDAVCreateFileInfoCache(
|
|
PRX_CONTEXT RxContext,
|
|
PDAV_USERMODE_CREATE_RETURNED_FILEINFO FileInfo,
|
|
NTSTATUS Status
|
|
);
|
|
|
|
VOID
|
|
MRxDAVCreateFileInfoCacheWithName(
|
|
PUNICODE_STRING FileName,
|
|
PMRX_NET_ROOT NetRoot,
|
|
PFILE_BASIC_INFORMATION Basic,
|
|
PFILE_STANDARD_INFORMATION Standard,
|
|
NTSTATUS Status
|
|
);
|
|
|
|
VOID
|
|
MRxDAVCreateBasicFileInfoCache(
|
|
PRX_CONTEXT RxContext,
|
|
PFILE_BASIC_INFORMATION Basic,
|
|
NTSTATUS Status
|
|
);
|
|
|
|
VOID
|
|
MRxDAVCreateBasicFileInfoCacheWithName(
|
|
PUNICODE_STRING OriginalFileName,
|
|
PMRX_NET_ROOT NetRoot,
|
|
PFILE_BASIC_INFORMATION Basic,
|
|
NTSTATUS Status
|
|
);
|
|
|
|
VOID
|
|
MRxDAVCreateStandardFileInfoCache(
|
|
PRX_CONTEXT RxContext,
|
|
PFILE_STANDARD_INFORMATION Standard,
|
|
NTSTATUS Status
|
|
);
|
|
|
|
VOID
|
|
MRxDAVCreateStandardFileInfoCacheWithName(
|
|
PUNICODE_STRING OriginalFileName,
|
|
PMRX_NET_ROOT NetRoot,
|
|
PFILE_STANDARD_INFORMATION Standard,
|
|
NTSTATUS Status
|
|
);
|
|
|
|
VOID
|
|
MRxDAVUpdateFileInfoCacheFromDelete(
|
|
PRX_CONTEXT RxContext
|
|
);
|
|
|
|
VOID
|
|
MRxDAVUpdateFileInfoCacheStatus(
|
|
PRX_CONTEXT RxContext,
|
|
NTSTATUS Status
|
|
);
|
|
|
|
VOID
|
|
MRxDAVUpdateBasicFileInfoCacheStatus(
|
|
PRX_CONTEXT RxContext,
|
|
NTSTATUS Status
|
|
);
|
|
|
|
VOID
|
|
MRxDAVUpdateStandardFileInfoCacheStatus(
|
|
PRX_CONTEXT RxContext,
|
|
NTSTATUS Status
|
|
);
|
|
|
|
VOID
|
|
MRxDAVInvalidateFileInfoCache(
|
|
PRX_CONTEXT RxContext
|
|
);
|
|
|
|
VOID
|
|
MRxDAVInvalidateFileInfoCacheWithName(
|
|
PUNICODE_STRING OriginalFileName,
|
|
PMRX_NET_ROOT NetRoot
|
|
);
|
|
|
|
VOID
|
|
MRxDAVInvalidateBasicFileInfoCache(
|
|
PRX_CONTEXT RxContext
|
|
);
|
|
|
|
VOID
|
|
MRxDAVInvalidateBasicFileInfoCacheWithName(
|
|
PUNICODE_STRING OriginalFileName,
|
|
PMRX_NET_ROOT NetRoot
|
|
);
|
|
|
|
VOID
|
|
MRxDAVInvalidateStandardFileInfoCache(
|
|
PRX_CONTEXT RxContext
|
|
);
|
|
|
|
VOID
|
|
MRxDAVInvalidateStandardFileInfoCacheWithName(
|
|
PUNICODE_STRING OriginalFileName,
|
|
PMRX_NET_ROOT NetRoot
|
|
);
|
|
|
|
VOID
|
|
MRxDAVUpdateFileInfoCacheFileSize(
|
|
PRX_CONTEXT RxContext,
|
|
PLARGE_INTEGER FileSize
|
|
);
|
|
|
|
VOID
|
|
MRxDAVUpdateBasicFileInfoCache(
|
|
PRX_CONTEXT RxContext,
|
|
ULONG FileAttributes,
|
|
PLARGE_INTEGER pLastWriteTime
|
|
);
|
|
|
|
VOID
|
|
MRxDAVUpdateBasicFileInfoCacheAll(
|
|
PRX_CONTEXT RxContext,
|
|
PFILE_BASIC_INFORMATION Basic
|
|
);
|
|
|
|
VOID
|
|
MRxDAVUpdateStandardFileInfoCache(
|
|
PRX_CONTEXT RxContext,
|
|
PFILE_STANDARD_INFORMATION Standard,
|
|
BOOLEAN IsDirectory
|
|
);
|
|
|
|
BOOLEAN
|
|
MRxDAVIsFileInfoCacheFound(
|
|
PRX_CONTEXT RxContext,
|
|
PDAV_USERMODE_CREATE_RETURNED_FILEINFO FileInfo,
|
|
NTSTATUS *Status,
|
|
PUNICODE_STRING OriginalFileName
|
|
);
|
|
/*
|
|
// these file attributes may be different between streams on a file
|
|
ULONG StreamAttributes = FILE_ATTRIBUTE_COMPRESSED |
|
|
FILE_ATTRIBUTE_DIRECTORY |
|
|
FILE_ATTRIBUTE_SPARSE_FILE;
|
|
*/
|
|
BOOLEAN
|
|
MRxDAVIsBasicFileInfoCacheFound(
|
|
PRX_CONTEXT RxContext,
|
|
PFILE_BASIC_INFORMATION Basic,
|
|
NTSTATUS *Status,
|
|
PUNICODE_STRING OriginalFileName
|
|
);
|
|
|
|
BOOLEAN
|
|
MRxDAVIsStandardFileInfoCacheFound(
|
|
PRX_CONTEXT RxContext,
|
|
PFILE_STANDARD_INFORMATION Standard,
|
|
NTSTATUS *Status,
|
|
PUNICODE_STRING OriginalFileName
|
|
);
|
|
|
|
NTSTATUS
|
|
MRxDAVGetFileInfoCacheStatus(
|
|
PRX_CONTEXT RxContext
|
|
);
|
|
|
|
BOOLEAN
|
|
MRxDAVIsFileNotFoundCached(
|
|
PRX_CONTEXT RxContext
|
|
);
|
|
|
|
BOOLEAN
|
|
MRxDAVIsFileNotFoundCachedWithName(
|
|
PUNICODE_STRING OriginalFileName,
|
|
PMRX_NET_ROOT NetRoot
|
|
);
|
|
|
|
VOID
|
|
MRxDAVCacheFileNotFound(
|
|
PRX_CONTEXT RxContext
|
|
);
|
|
|
|
VOID
|
|
MRxDAVCacheFileNotFoundWithName(
|
|
PUNICODE_STRING OriginalFileName,
|
|
PMRX_NET_ROOT NetRoot
|
|
);
|
|
|
|
VOID
|
|
MRxDAVCacheFileNotFoundFromQueryDirectory(
|
|
PRX_CONTEXT RxContext
|
|
);
|
|
|
|
VOID
|
|
MRxDAVInvalidateFileNotFoundCache(
|
|
PRX_CONTEXT RxContext
|
|
);
|
|
|
|
VOID
|
|
MRxDAVInvalidateFileNotFoundCacheForRename(
|
|
PRX_CONTEXT RxContext
|
|
);
|
|
|