1376 lines
63 KiB
XML
1376 lines
63 KiB
XML
<?xml version="1.0"?>
|
|
<doc>
|
|
<assembly>
|
|
<name>winfsp-msil</name>
|
|
</assembly>
|
|
<members>
|
|
<member name="T:Fsp.FileSystemBase">
|
|
<summary>
|
|
Provides the base class that user mode file systems must inherit from.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Fsp.FileSystemBase.ExceptionHandler(System.Exception)">
|
|
<summary>
|
|
Provides a means to customize the returned status code when an exception happens.
|
|
</summary>
|
|
<param name="ex"></param>
|
|
<returns>STATUS_SUCCESS or error code.</returns>
|
|
</member>
|
|
<member name="M:Fsp.FileSystemBase.Init(System.Object)">
|
|
<summary>
|
|
Occurs just before the file system is mounted.
|
|
File systems may override this method to configure the file system host.
|
|
</summary>
|
|
<param name="Host">
|
|
The file system host that is mounting this file system.
|
|
</param>
|
|
<returns>STATUS_SUCCESS or error code.</returns>
|
|
</member>
|
|
<member name="M:Fsp.FileSystemBase.Mounted(System.Object)">
|
|
<summary>
|
|
Occurs just after the file system is mounted,
|
|
but prior to receiving any file system operation.
|
|
</summary>
|
|
<param name="Host">
|
|
The file system host that is mounting this file system.
|
|
</param>
|
|
<returns>STATUS_SUCCESS or error code.</returns>
|
|
</member>
|
|
<member name="M:Fsp.FileSystemBase.Unmounted(System.Object)">
|
|
<summary>
|
|
Occurs just after the file system is unmounted.
|
|
No other file system operations will be received on this file system.
|
|
</summary>
|
|
<param name="Host">
|
|
The file system host that is mounting this file system.
|
|
</param>
|
|
</member>
|
|
<member name="M:Fsp.FileSystemBase.GetVolumeInfo(Fsp.Interop.VolumeInfo@)">
|
|
<summary>
|
|
Gets the volume information.
|
|
</summary>
|
|
<param name="VolumeInfo">
|
|
Receives the volume information.
|
|
</param>
|
|
<returns>STATUS_SUCCESS or error code.</returns>
|
|
</member>
|
|
<member name="M:Fsp.FileSystemBase.SetVolumeLabel(System.String,Fsp.Interop.VolumeInfo@)">
|
|
<summary>
|
|
Sets the volume label.
|
|
</summary>
|
|
<param name="VolumeLabel">
|
|
The new label for the volume.
|
|
</param>
|
|
<param name="VolumeInfo">
|
|
Receives the updated volume information.
|
|
</param>
|
|
<returns>STATUS_SUCCESS or error code.</returns>
|
|
</member>
|
|
<member name="M:Fsp.FileSystemBase.GetSecurityByName(System.String,System.UInt32@,System.Byte[]@)">
|
|
<summary>
|
|
Gets file or directory attributes and security descriptor given a file name.
|
|
</summary>
|
|
<param name="FileName">
|
|
The name of the file or directory to get the attributes and security descriptor for.
|
|
</param>
|
|
<param name="FileAttributes">
|
|
Receives the file attributes on successful return.
|
|
If this call returns STATUS_REPARSE, the file system may place here the index of the
|
|
first reparse point within FileName.
|
|
</param>
|
|
<param name="SecurityDescriptor">
|
|
Receives the file security descriptor. If the SecurityDescriptor parameter is null
|
|
on input the file system should not fill this value.
|
|
</param>
|
|
<returns>
|
|
STATUS_SUCCESS, STATUS_REPARSE or error code.
|
|
STATUS_REPARSE should be returned by file systems that support reparse points when
|
|
they encounter a FileName that contains reparse points anywhere but the final path
|
|
component.
|
|
</returns>
|
|
</member>
|
|
<member name="M:Fsp.FileSystemBase.Create(System.String,System.UInt32,System.UInt32,System.UInt32,System.Byte[],System.UInt64,System.Object@,System.Object@,Fsp.Interop.FileInfo@,System.String@)">
|
|
<summary>
|
|
Creates a new file or directory.
|
|
</summary>
|
|
<param name="FileName">
|
|
The name of the file or directory to be created.
|
|
</param>
|
|
<param name="CreateOptions">
|
|
Create options for this request.
|
|
</param>
|
|
<param name="GrantedAccess">
|
|
Determines the specific access rights that have been granted for this request.
|
|
</param>
|
|
<param name="FileAttributes">
|
|
File attributes to apply to the newly created file or directory.
|
|
</param>
|
|
<param name="SecurityDescriptor">
|
|
Security descriptor to apply to the newly created file or directory.
|
|
</param>
|
|
<param name="AllocationSize">
|
|
Allocation size for the newly created file.
|
|
</param>
|
|
<param name="FileNode">
|
|
Receives the file node for the newly created file.
|
|
</param>
|
|
<param name="FileDesc">
|
|
Receives the file descriptor for the newly created file.
|
|
</param>
|
|
<param name="FileInfo">
|
|
Receives the file information for the newly created file.
|
|
</param>
|
|
<param name="NormalizedName">
|
|
Receives the normalized name for the newly created file.
|
|
</param>
|
|
<returns>STATUS_SUCCESS or error code.</returns>
|
|
</member>
|
|
<member name="M:Fsp.FileSystemBase.Open(System.String,System.UInt32,System.UInt32,System.Object@,System.Object@,Fsp.Interop.FileInfo@,System.String@)">
|
|
<summary>
|
|
Opens a file or directory.
|
|
</summary>
|
|
<param name="FileName">
|
|
The name of the file or directory to be opened.
|
|
</param>
|
|
<param name="CreateOptions">
|
|
Create options for this request.
|
|
</param>
|
|
<param name="GrantedAccess">
|
|
Determines the specific access rights that have been granted for this request.
|
|
</param>
|
|
<param name="FileNode">
|
|
Receives the file node for the newly opened file.
|
|
</param>
|
|
<param name="FileDesc">
|
|
Receives the file descriptor for the newly opened file.
|
|
</param>
|
|
<param name="FileInfo">
|
|
Receives the file information for the newly opened file.
|
|
</param>
|
|
<param name="NormalizedName">
|
|
Receives the normalized name for the newly opened file.
|
|
</param>
|
|
<returns>STATUS_SUCCESS or error code.</returns>
|
|
</member>
|
|
<member name="M:Fsp.FileSystemBase.Overwrite(System.Object,System.Object,System.UInt32,System.Boolean,System.UInt64,Fsp.Interop.FileInfo@)">
|
|
<summary>
|
|
Overwrites a file.
|
|
</summary>
|
|
<param name="FileNode">
|
|
The file node for the file to be overwritten.
|
|
</param>
|
|
<param name="FileDesc">
|
|
The file descriptor for the file to be overwritten.
|
|
</param>
|
|
<param name="FileAttributes">
|
|
File attributes to apply to the overwritten file.
|
|
</param>
|
|
<param name="ReplaceFileAttributes">
|
|
When true the existing file attributes should be replaced with the new ones.
|
|
When false the existing file attributes should be merged (or'ed) with the new ones.
|
|
</param>
|
|
<param name="AllocationSize">
|
|
Allocation size for the overwritten file.
|
|
</param>
|
|
<param name="FileInfo">
|
|
Receives the updated file information.
|
|
</param>
|
|
<returns>STATUS_SUCCESS or error code.</returns>
|
|
</member>
|
|
<member name="M:Fsp.FileSystemBase.Cleanup(System.Object,System.Object,System.String,System.UInt32)">
|
|
<summary>
|
|
Cleans up a file or directory.
|
|
</summary>
|
|
<remarks>
|
|
<para>
|
|
When CreateFile is used to open or create a file the kernel creates a kernel mode file
|
|
object (type FILE_OBJECT) and a handle for it, which it returns to user-mode. The handle may
|
|
be duplicated (using DuplicateHandle), but all duplicate handles always refer to the same
|
|
file object. When all handles for a particular file object get closed (using CloseHandle)
|
|
the system sends a Cleanup request to the file system.
|
|
</para><para>
|
|
There will be a Cleanup operation for every Create or Open operation posted to the user mode
|
|
file system. However the Cleanup operation is not the final close operation on a file.
|
|
The file system must be ready to receive additional operations until close time. This is true
|
|
even when the file is being deleted!
|
|
</para><para>
|
|
The Flags parameter contains information about the cleanup operation:
|
|
<list>
|
|
<item>CleanupDelete -
|
|
An important function of the Cleanup operation is to complete a delete operation. Deleting
|
|
a file or directory in Windows is a three-stage process where the file is first opened, then
|
|
tested to see if the delete can proceed and if the answer is positive the file is then
|
|
deleted during Cleanup.
|
|
When this flag is set, this is the last outstanding cleanup for this particular file node.
|
|
</item>
|
|
<item>CleanupSetAllocationSize -
|
|
The NTFS and FAT file systems reset a file's allocation size when they receive the last
|
|
outstanding cleanup for a particular file node. User mode file systems that implement
|
|
allocation size and wish to duplicate the NTFS and FAT behavior can use this flag.
|
|
</item>
|
|
<item>CleanupSetArchiveBit -
|
|
File systems that support the archive bit should set the file node's archive bit when this
|
|
flag is set.
|
|
</item>
|
|
<item>CleanupSetLastAccessTime, CleanupSetLastWriteTime, CleanupSetChangeTime -
|
|
File systems should set the corresponding file time when each one of these flags is set.
|
|
Note that updating the last access time is expensive and a file system may choose to not
|
|
implement it.
|
|
</item>
|
|
</list>
|
|
</para><para>
|
|
There is no way to report failure of this operation. This is a Windows limitation.
|
|
</para>
|
|
</remarks>
|
|
<param name="FileNode">
|
|
The file node of the file or directory to cleanup.
|
|
</param>
|
|
<param name="FileDesc">
|
|
The file descriptor of the file or directory to cleanup.
|
|
</param>
|
|
<param name="FileName">
|
|
The name of the file or directory to cleanup. Sent only when a Delete is requested.
|
|
</param>
|
|
<param name="Flags">
|
|
These flags determine whether the file was modified and whether to delete the file.
|
|
</param>
|
|
<seealso cref="M:Fsp.FileSystemBase.CanDelete(System.Object,System.Object,System.String)"/>
|
|
<seealso cref="M:Fsp.FileSystemBase.SetDelete(System.Object,System.Object,System.String,System.Boolean)"/>
|
|
<seealso cref="M:Fsp.FileSystemBase.Close(System.Object,System.Object)"/>
|
|
</member>
|
|
<member name="M:Fsp.FileSystemBase.Close(System.Object,System.Object)">
|
|
<summary>
|
|
Closes a file or directory.
|
|
</summary>
|
|
<param name="FileNode">
|
|
The file node of the file or directory to close.
|
|
</param>
|
|
<param name="FileDesc">
|
|
The file descriptor of the file or directory to close.
|
|
</param>
|
|
</member>
|
|
<member name="M:Fsp.FileSystemBase.Read(System.Object,System.Object,System.IntPtr,System.UInt64,System.UInt32,System.UInt32@)">
|
|
<summary>
|
|
Reads a file.
|
|
</summary>
|
|
<param name="FileNode">
|
|
The file node of the file to read.
|
|
</param>
|
|
<param name="FileDesc">
|
|
The file descriptor of the file to read.
|
|
</param>
|
|
<param name="Buffer">
|
|
Pointer to a buffer that receives the results of the read operation.
|
|
</param>
|
|
<param name="Offset">
|
|
Offset within the file to read from.
|
|
</param>
|
|
<param name="Length">
|
|
Length of data to read.
|
|
</param>
|
|
<param name="BytesTransferred">
|
|
Receives the actual number of bytes read.
|
|
</param>
|
|
<returns>STATUS_SUCCESS or error code.</returns>
|
|
</member>
|
|
<member name="M:Fsp.FileSystemBase.Write(System.Object,System.Object,System.IntPtr,System.UInt64,System.UInt32,System.Boolean,System.Boolean,System.UInt32@,Fsp.Interop.FileInfo@)">
|
|
<summary>
|
|
Writes a file.
|
|
</summary>
|
|
<param name="FileNode">
|
|
The file node of the file to write.
|
|
</param>
|
|
<param name="FileDesc">
|
|
The file descriptor of the file to write.
|
|
</param>
|
|
<param name="Buffer">
|
|
Pointer to a buffer that receives the results of the write operation.
|
|
</param>
|
|
<param name="Offset">
|
|
Offset within the file to write to.
|
|
</param>
|
|
<param name="Length">
|
|
Length of data to write.
|
|
</param>
|
|
<param name="WriteToEndOfFile">
|
|
When true the file system must write to the current end of file. In this case the Offset
|
|
parameter will contain the value -1.
|
|
</param>
|
|
<param name="ConstrainedIo">
|
|
When true the file system must not extend the file (i.e. change the file size).
|
|
</param>
|
|
<param name="BytesTransferred">
|
|
Receives the actual number of bytes written.
|
|
</param>
|
|
<param name="FileInfo">
|
|
Receives the updated file information.
|
|
</param>
|
|
<returns>STATUS_SUCCESS or error code.</returns>
|
|
</member>
|
|
<member name="M:Fsp.FileSystemBase.Flush(System.Object,System.Object,Fsp.Interop.FileInfo@)">
|
|
<summary>
|
|
Flushes a file or volume.
|
|
</summary>
|
|
<remarks>
|
|
Note that the FSD will also flush all file/volume caches prior to invoking this operation.
|
|
</remarks>
|
|
<param name="FileNode">
|
|
The file node of the file to flush.
|
|
When this and the FileDesc parameter are null the whole volume is being flushed.
|
|
</param>
|
|
<param name="FileDesc">
|
|
The file descriptor of the file to flush.
|
|
When this and the FileNode parameter are null the whole volume is being flushed.
|
|
</param>
|
|
<param name="FileInfo">
|
|
Receives the updated file information.
|
|
</param>
|
|
<returns>STATUS_SUCCESS or error code.</returns>
|
|
</member>
|
|
<member name="M:Fsp.FileSystemBase.GetFileInfo(System.Object,System.Object,Fsp.Interop.FileInfo@)">
|
|
<summary>
|
|
Gets file or directory information.
|
|
</summary>
|
|
<param name="FileNode">
|
|
The file node of the file to get information for.
|
|
</param>
|
|
<param name="FileDesc">
|
|
The file descriptor of the file to get information for.
|
|
</param>
|
|
<param name="FileInfo">
|
|
Receives the file information.
|
|
</param>
|
|
<returns>STATUS_SUCCESS or error code.</returns>
|
|
</member>
|
|
<member name="M:Fsp.FileSystemBase.SetBasicInfo(System.Object,System.Object,System.UInt32,System.UInt64,System.UInt64,System.UInt64,System.UInt64,Fsp.Interop.FileInfo@)">
|
|
<summary>
|
|
Sets file or directory basic information.
|
|
</summary>
|
|
<param name="FileNode">
|
|
The file node of the file to set information for.
|
|
</param>
|
|
<param name="FileDesc">
|
|
The file descriptor of the file to set information for.
|
|
</param>
|
|
<param name="FileAttributes">
|
|
File attributes to apply to the file or directory.
|
|
If the value -1 is sent, the file attributes should not be changed.
|
|
</param>
|
|
<param name="CreationTime">
|
|
Creation time to apply to the file or directory.
|
|
If the value 0 is sent, the creation time should not be changed.
|
|
</param>
|
|
<param name="LastAccessTime">
|
|
Last access time to apply to the file or directory.
|
|
If the value 0 is sent, the last access time should not be changed.
|
|
</param>
|
|
<param name="LastWriteTime">
|
|
Last write time to apply to the file or directory.
|
|
If the value 0 is sent, the last write time should not be changed.
|
|
</param>
|
|
<param name="ChangeTime">
|
|
Change time to apply to the file or directory.
|
|
If the value 0 is sent, the change time should not be changed.
|
|
</param>
|
|
<param name="FileInfo">
|
|
Receives the updated file information.
|
|
</param>
|
|
<returns>STATUS_SUCCESS or error code.</returns>
|
|
</member>
|
|
<member name="M:Fsp.FileSystemBase.SetFileSize(System.Object,System.Object,System.UInt64,System.Boolean,Fsp.Interop.FileInfo@)">
|
|
<summary>
|
|
Sets file/allocation size.
|
|
</summary>
|
|
<remarks>
|
|
<para>
|
|
This function is used to change a file's sizes. Windows file systems maintain two kinds
|
|
of sizes: the file size is where the End Of File (EOF) is, and the allocation size is the
|
|
actual size that a file takes up on the "disk".
|
|
</para><para>
|
|
The rules regarding file/allocation size are:
|
|
<list>
|
|
<item>
|
|
Allocation size must always be aligned to the allocation unit boundary. The allocation
|
|
unit is the product SectorSize * SectorsPerAllocationUnit. The FSD will always send
|
|
properly aligned allocation sizes when setting the allocation size.
|
|
</item>
|
|
<item>
|
|
Allocation size is always greater or equal to the file size.
|
|
</item>
|
|
<item>
|
|
A file size of more than the current allocation size will also extend the allocation
|
|
size to the next allocation unit boundary.
|
|
</item>
|
|
<item>
|
|
An allocation size of less than the current file size should also truncate the current
|
|
file size.
|
|
</item>
|
|
</list>
|
|
</para>
|
|
</remarks>
|
|
<param name="FileNode">
|
|
The file node of the file to set the file/allocation size for.
|
|
</param>
|
|
<param name="FileDesc">
|
|
The file descriptor of the file to set the file/allocation size for.
|
|
</param>
|
|
<param name="NewSize">
|
|
New file/allocation size to apply to the file.
|
|
</param>
|
|
<param name="SetAllocationSize">
|
|
If true, then the allocation size is being set. if false, then the file size is being set.
|
|
</param>
|
|
<param name="FileInfo">
|
|
Receives the updated file information.
|
|
</param>
|
|
<returns>STATUS_SUCCESS or error code.</returns>
|
|
</member>
|
|
<member name="M:Fsp.FileSystemBase.CanDelete(System.Object,System.Object,System.String)">
|
|
<summary>
|
|
Determines whether a file or directory can be deleted.
|
|
</summary>
|
|
<remarks>
|
|
<para>
|
|
This function tests whether a file or directory can be safely deleted. This function does
|
|
not need to perform access checks, but may performs tasks such as check for empty
|
|
directories, etc.
|
|
</para><para>
|
|
This function should <b>NEVER</b> delete the file or directory in question. Deletion should
|
|
happen during Cleanup with the CleanupDelete flag set.
|
|
</para><para>
|
|
This function gets called when Win32 API's such as DeleteFile or RemoveDirectory are used.
|
|
It does not get called when a file or directory is opened with FILE_DELETE_ON_CLOSE.
|
|
</para><para>
|
|
NOTE: If both CanDelete and SetDelete are defined, SetDelete takes precedence. However
|
|
most file systems need only implement the CanDelete operation.
|
|
</para>
|
|
</remarks>
|
|
<param name="FileNode">
|
|
The file node of the file or directory to test for deletion.
|
|
</param>
|
|
<param name="FileDesc">
|
|
The file descriptor of the file or directory to test for deletion.
|
|
</param>
|
|
<param name="FileName">
|
|
The name of the file or directory to test for deletion.
|
|
</param>
|
|
<returns>STATUS_SUCCESS or error code.</returns>
|
|
<seealso cref="M:Fsp.FileSystemBase.Cleanup(System.Object,System.Object,System.String,System.UInt32)"/>
|
|
<seealso cref="M:Fsp.FileSystemBase.SetDelete(System.Object,System.Object,System.String,System.Boolean)"/>
|
|
</member>
|
|
<member name="M:Fsp.FileSystemBase.Rename(System.Object,System.Object,System.String,System.String,System.Boolean)">
|
|
<summary>
|
|
Renames a file or directory.
|
|
</summary>
|
|
<remarks>
|
|
The kernel mode FSD provides certain guarantees prior to posting a rename operation:
|
|
<list>
|
|
<item>
|
|
A file cannot be renamed if a file with the same name exists and has open handles.
|
|
</item>
|
|
<item>
|
|
A directory cannot be renamed if it or any of its subdirectories contains a file that
|
|
has open handles.
|
|
</item>
|
|
</list>
|
|
</remarks>
|
|
<param name="FileNode">
|
|
The file node of the file or directory to be renamed.
|
|
</param>
|
|
<param name="FileDesc">
|
|
The file descriptor of the file or directory to be renamed.
|
|
</param>
|
|
<param name="FileName">
|
|
The current name of the file or directory to rename.
|
|
</param>
|
|
<param name="NewFileName">
|
|
The new name for the file or directory.
|
|
</param>
|
|
<param name="ReplaceIfExists">
|
|
Whether to replace a file that already exists at NewFileName.
|
|
</param>
|
|
<returns>STATUS_SUCCESS or error code.</returns>
|
|
</member>
|
|
<member name="M:Fsp.FileSystemBase.GetSecurity(System.Object,System.Object,System.Byte[]@)">
|
|
<summary>
|
|
Gets file or directory security descriptor.
|
|
</summary>
|
|
<param name="FileNode">
|
|
The file node of the file or directory to get the security descriptor for.
|
|
</param>
|
|
<param name="FileDesc">
|
|
The file descriptor of the file or directory to get the security descriptor for.
|
|
</param>
|
|
<param name="SecurityDescriptor">
|
|
Receives the file security descriptor.
|
|
</param>
|
|
<returns>STATUS_SUCCESS or error code.</returns>
|
|
</member>
|
|
<member name="M:Fsp.FileSystemBase.SetSecurity(System.Object,System.Object,System.Security.AccessControl.AccessControlSections,System.Byte[])">
|
|
<summary>
|
|
Sets file or directory security descriptor.
|
|
</summary>
|
|
<param name="FileNode">
|
|
The file node of the file or directory to set the security descriptor for.
|
|
</param>
|
|
<param name="FileDesc">
|
|
The file descriptor of the file or directory to set the security descriptor for.
|
|
</param>
|
|
<param name="Sections">
|
|
Describes what parts of the file or directory security descriptor should be modified.
|
|
</param>
|
|
<param name="SecurityDescriptor">
|
|
Describes the modifications to apply to the file or directory security descriptor.
|
|
</param>
|
|
<returns>STATUS_SUCCESS or error code.</returns>
|
|
<seealso cref="M:Fsp.FileSystemBase.ModifySecurityDescriptorEx(System.Byte[],System.Security.AccessControl.AccessControlSections,System.Byte[],System.Byte[]@)"/>
|
|
</member>
|
|
<member name="M:Fsp.FileSystemBase.ReadDirectory(System.Object,System.Object,System.String,System.String,System.IntPtr,System.UInt32,System.UInt32@)">
|
|
<summary>
|
|
Reads a directory.
|
|
</summary>
|
|
<seealso cref="M:Fsp.FileSystemBase.ReadDirectoryEntry(System.Object,System.Object,System.String,System.String,System.Object@,System.String@,Fsp.Interop.FileInfo@)"/>
|
|
</member>
|
|
<member name="M:Fsp.FileSystemBase.ReadDirectoryEntry(System.Object,System.Object,System.String,System.String,System.Object@,System.String@,Fsp.Interop.FileInfo@)">
|
|
<summary>
|
|
Reads a directory entry.
|
|
</summary>
|
|
<param name="FileNode">
|
|
The file node of the directory to be read.
|
|
</param>
|
|
<param name="FileDesc">
|
|
The file descriptor of the directory to be read.
|
|
</param>
|
|
<param name="Pattern">
|
|
The pattern to match against files in this directory. Can be null. The file system
|
|
can choose to ignore this parameter as the FSD will always perform its own pattern
|
|
matching on the returned results.
|
|
</param>
|
|
<param name="Marker">
|
|
A file name that marks where in the directory to start reading. Files with names
|
|
that are greater than (not equal to) this marker (in the directory order determined
|
|
by the file system) should be returned. Can be null.
|
|
</param>
|
|
<param name="Context">
|
|
Can be used by the file system to track the ReadDirectory operation.
|
|
</param>
|
|
<param name="FileName">
|
|
Receives the file name for the directory entry.
|
|
</param>
|
|
<param name="FileInfo">
|
|
Receives the file information for the directory entry.
|
|
</param>
|
|
<returns>True if there are additional directory entries to return. False otherwise.</returns>
|
|
<seealso cref="M:Fsp.FileSystemBase.ReadDirectory(System.Object,System.Object,System.String,System.String,System.IntPtr,System.UInt32,System.UInt32@)"/>
|
|
</member>
|
|
<member name="M:Fsp.FileSystemBase.ResolveReparsePoints(System.String,System.UInt32,System.Boolean,Fsp.Interop.IoStatusBlock@,System.IntPtr,System.IntPtr)">
|
|
<summary>
|
|
Resolves reparse points.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Fsp.FileSystemBase.GetReparsePointByName(System.String,System.Boolean,System.Byte[]@)">
|
|
<summary>
|
|
Gets a reparse point given a file name.
|
|
</summary>
|
|
<param name="FileName">
|
|
The name of the file or directory to get the reparse point for.
|
|
</param>
|
|
<param name="IsDirectory">
|
|
Determines whether the passed file name is assumed to be a directory.
|
|
</param>
|
|
<param name="ReparseData">
|
|
Receives the reparse data for the file or directory.
|
|
</param>
|
|
<returns>STATUS_SUCCESS or error code.</returns>
|
|
</member>
|
|
<member name="M:Fsp.FileSystemBase.GetReparsePoint(System.Object,System.Object,System.String,System.Byte[]@)">
|
|
<summary>
|
|
Gets a reparse point.
|
|
</summary>
|
|
<param name="FileNode">
|
|
The file node of the reparse point.
|
|
</param>
|
|
<param name="FileDesc">
|
|
The file descriptor of the reparse point.
|
|
</param>
|
|
<param name="FileName">
|
|
The file name of the reparse point.
|
|
</param>
|
|
<param name="ReparseData">
|
|
Receives the reparse data for the reparse point.
|
|
</param>
|
|
<returns>STATUS_SUCCESS or error code.</returns>
|
|
</member>
|
|
<member name="M:Fsp.FileSystemBase.SetReparsePoint(System.Object,System.Object,System.String,System.Byte[])">
|
|
<summary>
|
|
Sets a reparse point.
|
|
</summary>
|
|
<param name="FileNode">
|
|
The file node of the reparse point.
|
|
</param>
|
|
<param name="FileDesc">
|
|
The file descriptor of the reparse point.
|
|
</param>
|
|
<param name="FileName">
|
|
The file name of the reparse point.
|
|
</param>
|
|
<param name="ReparseData">
|
|
The new reparse data for the reparse point.
|
|
</param>
|
|
<returns>STATUS_SUCCESS or error code.</returns>
|
|
</member>
|
|
<member name="M:Fsp.FileSystemBase.DeleteReparsePoint(System.Object,System.Object,System.String,System.Byte[])">
|
|
<summary>
|
|
Deletes a reparse point.
|
|
</summary>
|
|
<param name="FileNode">
|
|
The file node of the reparse point.
|
|
</param>
|
|
<param name="FileDesc">
|
|
The file descriptor of the reparse point.
|
|
</param>
|
|
<param name="FileName">
|
|
The file name of the reparse point.
|
|
</param>
|
|
<param name="ReparseData">
|
|
The reparse data for the reparse point.
|
|
</param>
|
|
<returns>STATUS_SUCCESS or error code.</returns>
|
|
</member>
|
|
<member name="M:Fsp.FileSystemBase.GetStreamInfo(System.Object,System.Object,System.IntPtr,System.UInt32,System.UInt32@)">
|
|
<summary>
|
|
Gets named streams information.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Fsp.FileSystemBase.GetStreamEntry(System.Object,System.Object,System.Object@,System.String@,System.UInt64@,System.UInt64@)">
|
|
<summary>
|
|
Gets named streams information entry.
|
|
</summary>
|
|
<param name="FileNode">
|
|
The file node of the file or directory to get stream information for.
|
|
</param>
|
|
<param name="FileDesc">
|
|
The file descriptor of the file or directory to get stream information for.
|
|
</param>
|
|
<param name="Context">
|
|
Can be used by the file system to track the GetStreamInfo operation.
|
|
</param>
|
|
<param name="StreamName">
|
|
Receives the stream name for the stream entry.
|
|
</param>
|
|
<param name="StreamSize">
|
|
Receives the stream size for the stream entry.
|
|
</param>
|
|
<param name="StreamAllocationSize">
|
|
Receives the stream allocation size for the stream entry.
|
|
</param>
|
|
<returns>True if there are additional stream entries to return. False otherwise.</returns>
|
|
</member>
|
|
<member name="M:Fsp.FileSystemBase.GetDirInfoByName(System.Object,System.Object,System.String,System.String@,Fsp.Interop.FileInfo@)">
|
|
<summary>
|
|
Gets directory information for a single file or directory within a parent directory.
|
|
</summary>
|
|
<param name="FileNode">
|
|
The file node of the parent directory.
|
|
</param>
|
|
<param name="FileDesc">
|
|
The file descriptor of the parent directory.
|
|
</param>
|
|
<param name="FileName">
|
|
The name of the file or directory to get information for. This name is relative
|
|
to the parent directory and is a single path component.
|
|
</param>
|
|
<param name="NormalizedName">
|
|
Receives the normalized name from the directory entry.
|
|
</param>
|
|
<param name="FileInfo">
|
|
Receives the file information.
|
|
</param>
|
|
<returns>STATUS_SUCCESS or error code.</returns>
|
|
</member>
|
|
<member name="M:Fsp.FileSystemBase.Control(System.Object,System.Object,System.UInt32,System.IntPtr,System.UInt32,System.IntPtr,System.UInt32,System.UInt32@)">
|
|
<summary>
|
|
Processes a control code.
|
|
</summary>
|
|
<remarks>
|
|
This function is called when a program uses the DeviceIoControl API.
|
|
</remarks>
|
|
<param name="FileNode">
|
|
The file node of the file or directory to be controled.
|
|
</param>
|
|
<param name="FileDesc">
|
|
The file descriptor of the file or directory to be controled.
|
|
</param>
|
|
<param name="ControlCode">
|
|
The control code for the operation. This code must have a DeviceType with bit
|
|
0x8000 set and must have a TransferType of METHOD_BUFFERED.
|
|
</param>
|
|
<param name="InputBuffer">
|
|
Pointer to a buffer that contains the input data.
|
|
</param>
|
|
<param name="InputBufferLength">
|
|
Input data length.
|
|
</param>
|
|
<param name="OutputBuffer">
|
|
Pointer to a buffer that will receive the output data.
|
|
</param>
|
|
<param name="OutputBufferLength">
|
|
Output data length.
|
|
</param>
|
|
<param name="BytesTransferred">
|
|
Receives the actual number of bytes transferred.
|
|
</param>
|
|
<returns>STATUS_SUCCESS or error code.</returns>
|
|
</member>
|
|
<member name="M:Fsp.FileSystemBase.SetDelete(System.Object,System.Object,System.String,System.Boolean)">
|
|
<summary>
|
|
Sets the file delete flag.
|
|
</summary>
|
|
<remarks>
|
|
<para>
|
|
This function sets a flag to indicates whether the FSD file should delete a file
|
|
when it is closed. This function does not need to perform access checks, but may
|
|
performs tasks such as check for empty directories, etc.
|
|
</para><para>
|
|
This function should <b>NEVER</b> delete the file or directory in question. Deletion should
|
|
happen during Cleanup with the CleanupDelete flag set.
|
|
</para><para>
|
|
This function gets called when Win32 API's such as DeleteFile or RemoveDirectory are used.
|
|
It does not get called when a file or directory is opened with FILE_DELETE_ON_CLOSE.
|
|
</para><para>
|
|
NOTE: If both CanDelete and SetDelete are defined, SetDelete takes precedence. However
|
|
most file systems need only implement the CanDelete operation.
|
|
</para>
|
|
</remarks>
|
|
<param name="FileNode">
|
|
The file node of the file or directory to set the delete flag for.
|
|
</param>
|
|
<param name="FileDesc">
|
|
The file descriptor of the file or directory to set the delete flag for.
|
|
</param>
|
|
<param name="FileName">
|
|
The name of the file or directory to set the delete flag for.
|
|
</param>
|
|
<param name="DeleteFile">
|
|
If set to TRUE the FSD indicates that the file will be deleted on Cleanup; otherwise
|
|
it will not be deleted. It is legal to receive multiple SetDelete calls for the same
|
|
file with different DeleteFile parameters.
|
|
</param>
|
|
<returns>STATUS_SUCCESS or error code.</returns>
|
|
<seealso cref="M:Fsp.FileSystemBase.Cleanup(System.Object,System.Object,System.String,System.UInt32)"/>
|
|
<seealso cref="M:Fsp.FileSystemBase.CanDelete(System.Object,System.Object,System.String)"/>
|
|
</member>
|
|
<member name="M:Fsp.FileSystemBase.DispatcherStopped(System.Boolean)">
|
|
<summary>
|
|
Inform the file system that its dispatcher has been stopped.
|
|
</summary>
|
|
<remarks>
|
|
<para>
|
|
Prior to WinFsp v2.0 the FSD would never unmount a file system volume unless
|
|
the user mode file system requested the unmount. Since WinFsp v2.0 it is possible
|
|
for the FSD to unmount a file system volume without an explicit user mode file system
|
|
request. For example, this happens when the FSD is being uninstalled.
|
|
</para><para>
|
|
A user mode file system can use this operation to determine when its dispatcher
|
|
has been stopped. The Normally parameter can be used to determine why the dispatcher
|
|
was stopped: it is TRUE when the file system is being stopped normally (i.e. via the
|
|
native FspFileSystemStopDispatcher) and FALSE otherwise.
|
|
</para><para>
|
|
A file system that uses the Service class infrastructure may use the
|
|
StopServiceIfNecessary method to correctly handle all cases. The base implementation
|
|
of this method calls the StopServiceIfNecessary method.
|
|
</para><para>
|
|
This operation is the last one that a file system will receive.
|
|
</para>
|
|
</remarks>
|
|
<param name="Normally">
|
|
TRUE if the file system is being stopped via the native FspFileSystemStopDispatcher.
|
|
FALSE if the file system is being stopped because of another reason such
|
|
as driver unload/uninstall.
|
|
</param>
|
|
<seealso cref="M:Fsp.FileSystemBase.StopServiceIfNecessary(System.Boolean)"/>
|
|
</member>
|
|
<member name="M:Fsp.FileSystemBase.NtStatusFromWin32(System.UInt32)">
|
|
<summary>
|
|
Converts a Win32 error code to a Windows kernel status code.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Fsp.FileSystemBase.Win32FromNtStatus(System.Int32)">
|
|
<summary>
|
|
Converts a Windows kernel status code to a Win32 error code.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Fsp.FileSystemBase.GetOperationProcessId">
|
|
<summary>
|
|
Gets the originating process ID.
|
|
</summary>
|
|
<remarks>
|
|
Valid only during Create, Open and Rename requests when the target exists.
|
|
</remarks>
|
|
</member>
|
|
<member name="M:Fsp.FileSystemBase.ModifySecurityDescriptor(System.Byte[],System.Security.AccessControl.AccessControlSections,System.Byte[])">
|
|
<summary>
|
|
Modifies a security descriptor. [OBSOLETE]
|
|
</summary>
|
|
<remarks>
|
|
This is a helper for implementing the SetSecurity operation.
|
|
</remarks>
|
|
<param name="SecurityDescriptor">
|
|
The original security descriptor.
|
|
</param>
|
|
<param name="Sections">
|
|
Describes what parts of the file or directory security descriptor should be modified.
|
|
</param>
|
|
<param name="ModificationDescriptor">
|
|
Describes the modifications to apply to the file or directory security descriptor.
|
|
</param>
|
|
<returns>The modified security descriptor.</returns>
|
|
<seealso cref="M:Fsp.FileSystemBase.SetSecurity(System.Object,System.Object,System.Security.AccessControl.AccessControlSections,System.Byte[])"/>
|
|
</member>
|
|
<member name="M:Fsp.FileSystemBase.ModifySecurityDescriptorEx(System.Byte[],System.Security.AccessControl.AccessControlSections,System.Byte[],System.Byte[]@)">
|
|
<summary>
|
|
Modifies a security descriptor.
|
|
</summary>
|
|
<remarks>
|
|
This is a helper for implementing the SetSecurity operation.
|
|
</remarks>
|
|
<param name="SecurityDescriptor">
|
|
The original security descriptor.
|
|
</param>
|
|
<param name="Sections">
|
|
Describes what parts of the file or directory security descriptor should be modified.
|
|
</param>
|
|
<param name="ModificationDescriptor">
|
|
Describes the modifications to apply to the file or directory security descriptor.
|
|
</param>
|
|
<param name="ModifiedDescriptor">
|
|
The modified security descriptor. This parameter is modified only on success.
|
|
</param>
|
|
<returns>STATUS_SUCCESS or error code.</returns>
|
|
<seealso cref="M:Fsp.FileSystemBase.SetSecurity(System.Object,System.Object,System.Security.AccessControl.AccessControlSections,System.Byte[])"/>
|
|
</member>
|
|
<member name="M:Fsp.FileSystemBase.FindReparsePoint(System.String,System.UInt32@)">
|
|
<summary>
|
|
Finds a reparse point in file name.
|
|
</summary>
|
|
<remarks>
|
|
This is a helper for implementing the GetSecurityByName operation in file systems
|
|
that support reparse points.
|
|
</remarks>
|
|
<param name="FileName">
|
|
The name of the file or directory.
|
|
</param>
|
|
<param name="ReparsePointIndex">
|
|
Receives the index of the first reparse point within FileName.
|
|
</param>
|
|
<returns>True if a reparse point was found, false otherwise.</returns>
|
|
<seealso cref="M:Fsp.FileSystemBase.GetSecurityByName(System.String,System.UInt32@,System.Byte[]@)"/>
|
|
</member>
|
|
<member name="M:Fsp.FileSystemBase.MakeReparsePoint(System.IntPtr,System.UInt32)">
|
|
<summary>
|
|
Makes a byte array that contains a reparse point.
|
|
</summary>
|
|
<returns>The reparse point byte array.</returns>
|
|
</member>
|
|
<member name="M:Fsp.FileSystemBase.GetReparseTag(System.Byte[])">
|
|
<summary>
|
|
Gets the reparse tag from reparse data.
|
|
</summary>
|
|
<param name="ReparseData">
|
|
The reparse data to extract the reparse tag from.
|
|
</param>
|
|
<returns>The reparse tag.</returns>
|
|
</member>
|
|
<member name="M:Fsp.FileSystemBase.CanReplaceReparsePoint(System.Byte[],System.Byte[])">
|
|
<summary>
|
|
Tests whether reparse data can be replaced.
|
|
</summary>
|
|
<remarks>
|
|
This is a helper for implementing the SetReparsePoint/DeleteReparsePoint operation
|
|
in file systems that support reparse points.
|
|
</remarks>
|
|
<param name="CurrentReparseData">
|
|
The current reparse data.
|
|
</param>
|
|
<param name="ReplaceReparseData">
|
|
The replacement reparse data.
|
|
</param>
|
|
<returns>STATUS_SUCCESS or error code.</returns>
|
|
<seealso cref="M:Fsp.FileSystemBase.SetReparsePoint(System.Object,System.Object,System.String,System.Byte[])"/>
|
|
<seealso cref="M:Fsp.FileSystemBase.DeleteReparsePoint(System.Object,System.Object,System.String,System.Byte[])"/>
|
|
</member>
|
|
<member name="T:Fsp.FileSystemHost">
|
|
<summary>
|
|
Provides a means to host (mount) a file system.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Fsp.FileSystemHost.#ctor(Fsp.FileSystemBase)">
|
|
<summary>
|
|
Creates an instance of the FileSystemHost class.
|
|
</summary>
|
|
<param name="FileSystem">The file system to host.</param>
|
|
</member>
|
|
<member name="M:Fsp.FileSystemHost.Dispose">
|
|
<summary>
|
|
Unmounts the file system and releases all associated resources.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Fsp.FileSystemHost.SectorSize">
|
|
<summary>
|
|
Gets or sets the sector size used by the file system.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Fsp.FileSystemHost.SectorsPerAllocationUnit">
|
|
<summary>
|
|
Gets or sets the sectors per allocation unit used by the file system.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Fsp.FileSystemHost.MaxComponentLength">
|
|
<summary>
|
|
Gets or sets the maximum path component length used by the file system.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Fsp.FileSystemHost.VolumeCreationTime">
|
|
<summary>
|
|
Gets or sets the volume creation time.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Fsp.FileSystemHost.VolumeSerialNumber">
|
|
<summary>
|
|
Gets or sets the volume serial number.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Fsp.FileSystemHost.FileInfoTimeout">
|
|
<summary>
|
|
Gets or sets the file information timeout.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Fsp.FileSystemHost.VolumeInfoTimeout">
|
|
<summary>
|
|
Gets or sets the volume information timeout.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Fsp.FileSystemHost.DirInfoTimeout">
|
|
<summary>
|
|
Gets or sets the directory information timeout.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Fsp.FileSystemHost.SecurityTimeout">
|
|
<summary>
|
|
Gets or sets the security information timeout.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Fsp.FileSystemHost.StreamInfoTimeout">
|
|
<summary>
|
|
Gets or sets the stream information timeout.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Fsp.FileSystemHost.EaTimeout">
|
|
<summary>
|
|
Gets or sets the EA information timeout.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Fsp.FileSystemHost.CaseSensitiveSearch">
|
|
<summary>
|
|
Gets or sets a value that determines whether the file system is case sensitive.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Fsp.FileSystemHost.CasePreservedNames">
|
|
<summary>
|
|
Gets or sets a value that determines whether a case insensitive file system
|
|
preserves case in file names.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Fsp.FileSystemHost.UnicodeOnDisk">
|
|
<summary>
|
|
Gets or sets a value that determines whether file names support unicode characters.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Fsp.FileSystemHost.PersistentAcls">
|
|
<summary>
|
|
Gets or sets a value that determines whether the file system supports ACL security.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Fsp.FileSystemHost.ReparsePoints">
|
|
<summary>
|
|
Gets or sets a value that determines whether the file system supports reparse points.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Fsp.FileSystemHost.ReparsePointsAccessCheck">
|
|
<summary>
|
|
Gets or sets a value that determines whether the file system allows creation of
|
|
symbolic links without additional privileges.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Fsp.FileSystemHost.NamedStreams">
|
|
<summary>
|
|
Gets or sets a value that determines whether the file system supports named streams.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Fsp.FileSystemHost.ExtendedAttributes">
|
|
<summary>
|
|
Gets or sets a value that determines whether the file system supports extended attributes.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Fsp.FileSystemHost.Prefix">
|
|
<summary>
|
|
Gets or sets the prefix for a network file system.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Fsp.FileSystemHost.FileSystemName">
|
|
<summary>
|
|
Gets or sets the file system name.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Fsp.FileSystemHost.Preflight(System.String)">
|
|
<summary>
|
|
Checks whether mounting a file system is possible.
|
|
</summary>
|
|
<param name="MountPoint">
|
|
The mount point for the new file system. A value of null means that
|
|
the file system should use the next available drive letter counting
|
|
downwards from Z: as its mount point.
|
|
</param>
|
|
<returns>STATUS_SUCCESS or error code.</returns>
|
|
</member>
|
|
<member name="M:Fsp.FileSystemHost.Mount(System.String,System.Byte[],System.Boolean,System.UInt32)">
|
|
<summary>
|
|
Mounts a file system.
|
|
</summary>
|
|
<param name="MountPoint">
|
|
The mount point for the new file system. A value of null means that
|
|
the file system should use the next available drive letter counting
|
|
downwards from Z: as its mount point.
|
|
</param>
|
|
<param name="SecurityDescriptor">
|
|
Security descriptor to use if mounting on (newly created) directory.
|
|
A value of null means the directory should be created with default
|
|
security.
|
|
</param>
|
|
<param name="Synchronized">
|
|
If true file system operations are synchronized using an exclusive lock.
|
|
</param>
|
|
<param name="DebugLog">
|
|
A value of 0 disables all debug logging.
|
|
A value of -1 enables all debug logging.
|
|
</param>
|
|
<returns>STATUS_SUCCESS or error code.</returns>
|
|
</member>
|
|
<member name="M:Fsp.FileSystemHost.MountEx(System.String,System.UInt32,System.Byte[],System.Boolean,System.UInt32)">
|
|
<summary>
|
|
Mounts a file system.
|
|
</summary>
|
|
<param name="MountPoint">
|
|
The mount point for the new file system. A value of null means that
|
|
the file system should use the next available drive letter counting
|
|
downwards from Z: as its mount point.
|
|
</param>
|
|
<param name="ThreadCount">
|
|
Number of threads to use to service file system requests. A value
|
|
of 0 means that the default number of threads should be used.
|
|
</param>
|
|
<param name="SecurityDescriptor">
|
|
Security descriptor to use if mounting on (newly created) directory.
|
|
A value of null means the directory should be created with default
|
|
security.
|
|
</param>
|
|
<param name="Synchronized">
|
|
If true file system operations are synchronized using an exclusive lock.
|
|
</param>
|
|
<param name="DebugLog">
|
|
A value of 0 disables all debug logging.
|
|
A value of -1 enables all debug logging.
|
|
</param>
|
|
<returns>STATUS_SUCCESS or error code.</returns>
|
|
</member>
|
|
<member name="M:Fsp.FileSystemHost.Unmount">
|
|
<summary>
|
|
Unmounts the file system and releases all associated resources.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Fsp.FileSystemHost.MountPoint">
|
|
<summary>
|
|
Gets the file system mount point.
|
|
</summary>
|
|
<returns>The file system mount point.</returns>
|
|
</member>
|
|
<member name="M:Fsp.FileSystemHost.FileSystem">
|
|
<summary>
|
|
Gets the hosted file system.
|
|
</summary>
|
|
<returns>The hosted file system.</returns>
|
|
</member>
|
|
<member name="M:Fsp.FileSystemHost.SetDebugLogFile(System.String)">
|
|
<summary>
|
|
Sets the debug log file to use when debug logging is enabled.
|
|
</summary>
|
|
<param name="FileName">
|
|
The debug log file name. A value of "-" means standard error output.
|
|
</param>
|
|
<returns>STATUS_SUCCESS or error code.</returns>
|
|
</member>
|
|
<member name="M:Fsp.FileSystemHost.Version">
|
|
<summary>
|
|
Return the installed version of WinFsp.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Fsp.FileSystemHost.GetOperationRequestHint">
|
|
<summary>
|
|
Returns a RequestHint to reference the current operation asynchronously.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Fsp.FileSystemHost.SendReadResponse(System.UInt64,System.Int32,System.UInt32)">
|
|
<summary>
|
|
Asynchronously complete a Read operation.
|
|
</summary>
|
|
<param name="RequestHint">
|
|
A reference to the operation to complete.
|
|
</param>
|
|
<param name="Status">
|
|
STATUS_SUCCESS or error code.
|
|
</param>
|
|
<param name="BytesTransferred">
|
|
Number of bytes read.
|
|
</param>
|
|
</member>
|
|
<member name="M:Fsp.FileSystemHost.SendWriteResponse(System.UInt64,System.Int32,System.UInt32,Fsp.Interop.FileInfo@)">
|
|
<summary>
|
|
Asynchronously complete a Write operation.
|
|
</summary>
|
|
<param name="RequestHint">
|
|
A reference to the operation to complete.
|
|
</param>
|
|
<param name="Status">
|
|
STATUS_SUCCESS or error code.
|
|
</param>
|
|
<param name="BytesTransferred">
|
|
The number of bytes written.
|
|
</param>
|
|
<param name="FileInfo">
|
|
Updated file information.
|
|
</param>
|
|
</member>
|
|
<member name="M:Fsp.FileSystemHost.SendReadDirectoryResponse(System.UInt64,System.Int32,System.UInt32)">
|
|
<summary>
|
|
Asynchronously complete a ReadDirectory operation.
|
|
</summary>
|
|
<param name="RequestHint">
|
|
A reference to the operation to complete.
|
|
</param>
|
|
<param name="Status">
|
|
STATUS_SUCCESS or error code.
|
|
</param>
|
|
<param name="BytesTransferred">
|
|
Number of bytes read.
|
|
</param>
|
|
</member>
|
|
<member name="M:Fsp.FileSystemHost.NotifyBegin(System.UInt32)">
|
|
<summary>
|
|
Begin notifying Windows that the file system has file changes.
|
|
</summary>
|
|
<remarks>
|
|
<para>
|
|
A file system that wishes to notify Windows about file changes must
|
|
first issue an FspFileSystemBegin call, followed by 0 or more
|
|
FspFileSystemNotify calls, followed by an FspFileSystemNotifyEnd call.
|
|
</para><para>
|
|
This operation blocks concurrent file rename operations. File rename
|
|
operations may interfere with file notification, because a file being
|
|
notified may also be concurrently renamed. After all file change
|
|
notifications have been issued, you must make sure to call
|
|
FspFileSystemNotifyEnd to allow file rename operations to proceed.
|
|
</para>
|
|
</remarks>
|
|
<returns>
|
|
STATUS_SUCCESS or error code. The error code STATUS_CANT_WAIT means that
|
|
a file rename operation is currently in progress and the operation must be
|
|
retried at a later time.
|
|
</returns>
|
|
</member>
|
|
<member name="M:Fsp.FileSystemHost.NotifyEnd">
|
|
<summary>
|
|
End notifying Windows that the file system has file changes.
|
|
</summary>
|
|
<remarks>
|
|
<para>
|
|
A file system that wishes to notify Windows about file changes must
|
|
first issue an FspFileSystemBegin call, followed by 0 or more
|
|
FspFileSystemNotify calls, followed by an FspFileSystemNotifyEnd call.
|
|
</para><para>
|
|
This operation allows any blocked file rename operations to proceed.
|
|
</para>
|
|
</remarks>
|
|
<returns>STATUS_SUCCESS or error code.</returns>
|
|
</member>
|
|
<member name="M:Fsp.FileSystemHost.Notify(Fsp.Interop.NotifyInfo[])">
|
|
<summary>
|
|
Notify Windows that the file system has file changes.
|
|
</summary>
|
|
<remarks>
|
|
<para>
|
|
A file system that wishes to notify Windows about file changes must
|
|
first issue an FspFileSystemBegin call, followed by 0 or more
|
|
FspFileSystemNotify calls, followed by an FspFileSystemNotifyEnd call.
|
|
</para><para>
|
|
Note that FspFileSystemNotify requires file names to be normalized. A
|
|
normalized file name is one that contains the correct case of all characters
|
|
in the file name.
|
|
</para><para>
|
|
For case-sensitive file systems all file names are normalized by definition.
|
|
For case-insensitive file systems that implement file name normalization,
|
|
a normalized file name is the one that the file system specifies in the
|
|
response to Create or Open (see also FspFileSystemGetOpenFileInfo). For
|
|
case-insensitive file systems that do not implement file name normalization
|
|
a normalized file name is the upper case version of the file name used
|
|
to open the file.
|
|
</para>
|
|
</remarks>
|
|
<returns>STATUS_SUCCESS or error code.</returns>
|
|
</member>
|
|
<member name="T:Fsp.Interop.VolumeInfo">
|
|
<summary>
|
|
Contains volume information about a file system.
|
|
</summary>
|
|
</member>
|
|
<member name="F:Fsp.Interop.VolumeInfo.TotalSize">
|
|
<summary>
|
|
Total size of volume in bytes.
|
|
</summary>
|
|
</member>
|
|
<member name="F:Fsp.Interop.VolumeInfo.FreeSize">
|
|
<summary>
|
|
Free size of volume in bytes.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Fsp.Interop.VolumeInfo.SetVolumeLabel(System.String)">
|
|
<summary>
|
|
Sets the volume label.
|
|
</summary>
|
|
</member>
|
|
<member name="T:Fsp.Interop.FileInfo">
|
|
<summary>
|
|
Contains metadata information about a file or directory.
|
|
</summary>
|
|
</member>
|
|
<member name="F:Fsp.Interop.FileInfo.FileAttributes">
|
|
<summary>
|
|
The file or directory attributes.
|
|
</summary>
|
|
</member>
|
|
<member name="F:Fsp.Interop.FileInfo.ReparseTag">
|
|
<summary>
|
|
The reparse tag of the file or directory.
|
|
This value is 0 if the file or directory is not a reparse point.
|
|
</summary>
|
|
</member>
|
|
<member name="F:Fsp.Interop.FileInfo.AllocationSize">
|
|
<summary>
|
|
The allocation size of the file.
|
|
</summary>
|
|
</member>
|
|
<member name="F:Fsp.Interop.FileInfo.FileSize">
|
|
<summary>
|
|
The file size of the file (end of file).
|
|
</summary>
|
|
</member>
|
|
<member name="F:Fsp.Interop.FileInfo.CreationTime">
|
|
<summary>
|
|
The time that the file or directory was created.
|
|
</summary>
|
|
</member>
|
|
<member name="F:Fsp.Interop.FileInfo.LastAccessTime">
|
|
<summary>
|
|
The time that the file or directory was last accessed.
|
|
</summary>
|
|
</member>
|
|
<member name="F:Fsp.Interop.FileInfo.LastWriteTime">
|
|
<summary>
|
|
The time that the file or direcotry was last modified.
|
|
</summary>
|
|
</member>
|
|
<member name="F:Fsp.Interop.FileInfo.ChangeTime">
|
|
<summary>
|
|
The time that the file or directory metadata was last modified.
|
|
</summary>
|
|
</member>
|
|
<member name="F:Fsp.Interop.FileInfo.IndexNumber">
|
|
<summary>
|
|
A unique identifier that is associated with the file or directory.
|
|
Not all file systems support this value.
|
|
</summary>
|
|
</member>
|
|
<member name="F:Fsp.Interop.FileInfo.HardLinks">
|
|
<summary>
|
|
The number of hard links.
|
|
Not currently implemented. Set to 0.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Fsp.Interop.FileInfo.EaSize">
|
|
<summary>
|
|
The extended attribute size of the file.
|
|
</summary>
|
|
</member>
|
|
<member name="T:Fsp.Interop.NotifyAction">
|
|
<summary>
|
|
Enumeration of all the possible values for NotifyInfo.Action
|
|
</summary>
|
|
</member>
|
|
<member name="T:Fsp.Interop.NotifyFilter">
|
|
<summary>
|
|
Enumeration of all the possible values for NotifyInfo.Filter
|
|
</summary>
|
|
</member>
|
|
<member name="T:Fsp.Interop.NotifyInfo">
|
|
<summary>
|
|
Contains file change notification information.
|
|
</summary>
|
|
</member>
|
|
<member name="T:Fsp.Service">
|
|
<summary>
|
|
Provides the base class for a process that can be run as a service,
|
|
command line application or under the control of the WinFsp launcher.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Fsp.Service.#ctor(System.String)">
|
|
<summary>
|
|
Creates an instance of the Service class.
|
|
</summary>
|
|
<param name="ServiceName">The name of the service.</param>
|
|
</member>
|
|
<member name="M:Fsp.Service.Run">
|
|
<summary>
|
|
Runs a service.
|
|
</summary>
|
|
<returns>Service process exit code.</returns>
|
|
</member>
|
|
<member name="M:Fsp.Service.Stop">
|
|
<summary>
|
|
Stops a running service.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Fsp.Service.ExitCode">
|
|
<summary>
|
|
Gets or sets the service process exit code.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Fsp.Service.ExceptionHandler(System.Exception)">
|
|
<summary>
|
|
Provides a means to customize the returned status code when an exception happens.
|
|
</summary>
|
|
<param name="ex"></param>
|
|
<returns>STATUS_SUCCESS or error code.</returns>
|
|
</member>
|
|
<member name="M:Fsp.Service.OnStart(System.String[])">
|
|
<summary>
|
|
Occurs when the service starts.
|
|
</summary>
|
|
<param name="Args">Command line arguments passed to the service.</param>
|
|
</member>
|
|
<member name="M:Fsp.Service.OnStop">
|
|
<summary>
|
|
Occurs when the service stops.
|
|
</summary>
|
|
</member>
|
|
</members>
|
|
</doc>
|