[ITP] FUSE 2.8

Mark Geisert mark@maxrnd.com
Mon Sep 5 20:16:00 GMT 2016


Adrien JUND wrote:
>> Separate from that, it's been a little work disentangling the meaning of various names used for this project.  Here's what I think the names mean:
>>
>> FUSE - a protocol, which exists in different versions
>> WinFSP - a Windows-native DLL mapping FUSE 2.8 ops to/from Windows file ops
>> cygfuse - a Cygwin DLL allowing Cygwin SSHFS and FUSEPY to use WinFSP
>>
>> If that's correct, I'd like to regularize the names of things in the proposed cygfuse package to accurately reflect their meaning.  E.g., change fuse.cygport to cygfuse.cygport, etc.  The doc inside some files might need updating.
>
> About cygfuse description, does the goal of cygfuse is not to wrappe
> FUSE API for user land file systems like Dokan, WinFSP, CBFS, and
> others ?
>
> I have tried to see how to integrate Dokan in cygfuse and it is
> currently hard linked to WinFSP and makes hard the integration for
> others FS.
> A neutral interface with common operations should be made to fix the situation.

I believe all interested parties have agreed we want to support multiple FUSE 
implementations.  cygfuse is intended to be the connector between a FUSE 
implementation and Cygwin versions of FUSE apps like SSHFS and FUSEPY.  The idea 
was to allow different FUSE implementations (e.g., WinFSP, Dokan, etc) under the 
hood without having to modify the Cygwin level apps SSHFS, FUSEPY, etc to match.

As currently implemented, cygfuse is hardwired to work with WinFSP.  That's only 
a consequence of cygfuse having been provided by WinFSP's author.  The plan is 
to extend cygfuse so that it can support multiple FUSE implementations of which 
one is selected at runtime.

Currently, if WinFSP is installed on the system (determined by the existence of 
a particular registry key) then cygfuse attaches to the WinFSP DLL.  This code 
needs to be extended to check whether Dokan is installed (determined by some 
mechanism TBD) and then attach to Dokan's DLL.  And so on for other future 
implementations.

I'm trying to get my understanding of the pieces and naming correct in order to 
modify the cygfuse code to be more generic and less tied to WinFSP.

..mark



More information about the Cygwin-apps mailing list