Jean-Pierre André wrote:
> Hi Eric,
>
> Eric Biggers wrote:
[...]
>>> About integrating system compression into ntfs-3g, I
>>> want to try making it a plugin loaded on demand. this
>>> will improve modularity and facilitate maintainance.
>>> For instance an upgrade such as the one you are
>>> announcing could be released independently of ntfs-3g.
>>> In the fuse interface (ntfs-3g.c or lownetfs-3g.c) the
>>> inode would be opened, and if it has a reparse mark,
>>> control would be passed to a handler depending of the
>>> reparse tag, either internal (symlinks and junctions)
>>> or external (system compression). The interface would
>>> be like the fuse one, with the path replaced by a pointer
>>> to inode descriptor. More thoughts needed...
>>
>> Interesting idea.  I agree that it would be nice to support new types
>> of reparse
>> points without having them directly tied to the core library/driver.
>> There is
>> quite a bit of code needed to support the system-compressed files and
>> I expect
>> that the majority of users don't need it.
>>
>> I suppose that NTFS-3g would have to provide a plugins directory, a
>> plugin
>> package would drop a .so file into it, and the FUSE driver would
>> dynamically
>> load the available plugins when starting up?
>
> My initial view (subject to change) is to have
> the reparse tag in the name of the .so (such as
> ntfs_plugin_80000017.so). When some application
> wants to access a file with reparse tag 80000017
> for the first time, the plugin is loaded and its
> init() function returns an array of functions.
>
> Defining a plugin directory would require some
> customization by distributions.
>
> Roughly speaking, the hooks you have inserted
> have to be replaced by two function calls, one to
> locate the plugin, then a call to the needed plugin
> entry.

See proposal on
http://jp-andre.pagesperso-orange.fr/systcomp.patches.gz

Jean-Pierre



------------------------------------------------------------------------------
Go from Idea to Many App Stores Faster with Intel(R) XDK
Give your users amazing mobile app experiences with Intel(R) XDK.
Use one codebase in this all-in-one HTML5 development environment.
Design, debug & build mobile apps & 2D/3D high-impact games for multiple OSs.
http://pubads.g.doubleclick.net/gampad/clk?id=254741551&iu=/4140
_______________________________________________
ntfs-3g-devel mailing list
ntfs-3g-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ntfs-3g-devel

Reply via email to