This is the mail archive of the cygwin-apps mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [ITP] FUSE 2.8


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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]