mirror of
				https://github.com/winfsp/winfsp.git
				synced 2025-10-31 12:08:41 -05:00 
			
		
		
		
	Merge pull request #176 from FrKaram/Issue174
dotnet: add FlushAndPurgeOnCleanup and FspVersion
This commit is contained in:
		| @@ -60,4 +60,5 @@ CONTRIBUTOR LIST | |||||||
| |John Oberschelp                                                |john at oberschelp.net | |John Oberschelp                                                |john at oberschelp.net | ||||||
| |Sam Kelly (DuroSoft Technologies LLC, https://durosoft.com)    |sam at durosoft.com | |Sam Kelly (DuroSoft Technologies LLC, https://durosoft.com)    |sam at durosoft.com | ||||||
| |Tobias Urlaub                                                  |saibotu at outlook.de | |Tobias Urlaub                                                  |saibotu at outlook.de | ||||||
|  | |Francois Karam (KS2, http://www.ks2.fr)                        |francois.karam at ks2.fr | ||||||
| |=== | |=== | ||||||
|   | |||||||
| @@ -194,6 +194,11 @@ namespace Fsp | |||||||
|             get { return 0 != (_VolumeParams.Flags & VolumeParams.PassQueryDirectoryFileName); } |             get { return 0 != (_VolumeParams.Flags & VolumeParams.PassQueryDirectoryFileName); } | ||||||
|             set { _VolumeParams.Flags |= (value ? VolumeParams.PassQueryDirectoryFileName : 0); } |             set { _VolumeParams.Flags |= (value ? VolumeParams.PassQueryDirectoryFileName : 0); } | ||||||
|         } |         } | ||||||
|  |         public Boolean FlushAndPurgeOnCleanup | ||||||
|  |         { | ||||||
|  |             get { return 0 != (_VolumeParams.Flags & VolumeParams.FlushAndPurgeOnCleanup); } | ||||||
|  |             set { _VolumeParams.Flags |= (value ? VolumeParams.FlushAndPurgeOnCleanup : 0); } | ||||||
|  |         } | ||||||
|         /// <summary> |         /// <summary> | ||||||
|         /// Gets or sets the prefix for a network file system. |         /// Gets or sets the prefix for a network file system. | ||||||
|         /// </summary> |         /// </summary> | ||||||
| @@ -347,6 +352,14 @@ namespace Fsp | |||||||
|         { |         { | ||||||
|             return Api.SetDebugLogFile(FileName); |             return Api.SetDebugLogFile(FileName); | ||||||
|         } |         } | ||||||
|  |         /// <summary> | ||||||
|  |         /// Return the installed version of WinFsp. | ||||||
|  |         /// </summary> | ||||||
|  |         /// <returns></returns> | ||||||
|  |         public static Version Version() | ||||||
|  |         { | ||||||
|  |             return Api.GetFspVersion(); | ||||||
|  |         } | ||||||
|  |  | ||||||
|         /* FSP_FILE_SYSTEM_INTERFACE */ |         /* FSP_FILE_SYSTEM_INTERFACE */ | ||||||
|         private static Byte[] ByteBufferNotNull = new Byte[0]; |         private static Byte[] ByteBufferNotNull = new Byte[0]; | ||||||
|   | |||||||
| @@ -43,6 +43,7 @@ namespace Fsp.Interop | |||||||
|         internal const UInt32 PassQueryDirectoryPattern = 0x00000800; |         internal const UInt32 PassQueryDirectoryPattern = 0x00000800; | ||||||
|         internal const UInt32 AlwaysUseDoubleBuffering = 0x00001000; |         internal const UInt32 AlwaysUseDoubleBuffering = 0x00001000; | ||||||
|         internal const UInt32 PassQueryDirectoryFileName = 0x00002000; |         internal const UInt32 PassQueryDirectoryFileName = 0x00002000; | ||||||
|  |         internal const UInt32 FlushAndPurgeOnCleanup = 0x00004000; | ||||||
|         internal const UInt32 UmFileContextIsUserContext2 = 0x00010000; |         internal const UInt32 UmFileContextIsUserContext2 = 0x00010000; | ||||||
|         internal const UInt32 UmFileContextIsFullContext = 0x00020000; |         internal const UInt32 UmFileContextIsFullContext = 0x00020000; | ||||||
|         internal const int PrefixSize = 192; |         internal const int PrefixSize = 192; | ||||||
| @@ -979,6 +980,13 @@ namespace Fsp.Interop | |||||||
|             return 0/*STATUS_SUCCESS*/; |             return 0/*STATUS_SUCCESS*/; | ||||||
|         } |         } | ||||||
|  |  | ||||||
|  |         internal static Version GetFspVersion() | ||||||
|  |         { | ||||||
|  |             UInt32 Version = 0; | ||||||
|  |             FspVersion(out Version); | ||||||
|  |             return new System.Version((Int32)Version >> 16, (Int32)Version & 0xFFFF); | ||||||
|  |         } | ||||||
|  |  | ||||||
|         /* initialization */ |         /* initialization */ | ||||||
|         private static IntPtr LoadDll() |         private static IntPtr LoadDll() | ||||||
|         { |         { | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user