Import librefuse and libpuffs

Import libpuffs and our port of libpuffs. The port was done as part of
GSoC 2011 FUSE project, done by Evgeniy Ivanov. The librefuse import
did not require any porting efforts. Libpuffs has been modified to
understand our VFS-FS protocol and translate between that and PUFFS. As
an example that it works, fuse-ntfs-3g from pkgsrc can be compiled and
used to mount ntfs partitions:
mount -t ntfs-3g <device> <mountpoint>

FUSE only works with the asynchronous version of VFS. See <docs/UPDATING> on
how to run AVFS.

This patch further includes some changes to mount(1) and mount(2) so it's
possible to use file systems provided by pkgsrc (note: manual modifications
to /etc/system.conf are still needed. There has been made an exception for
fuse-ntfs-3g, so it already as an entry).
This commit is contained in:
Thomas Veerman
2011-11-14 11:53:05 +00:00
parent a209c3ae12
commit 490e0de548
54 changed files with 11436 additions and 54 deletions

View File

@@ -202,6 +202,9 @@ _PROTOTYPE( pid_t getnpid, (endpoint_t proc_ep) );
_PROTOTYPE( uid_t getnuid, (endpoint_t proc_ep) );
_PROTOTYPE( gid_t getngid, (endpoint_t proc_ep) );
_PROTOTYPE( int getnucred, (endpoint_t proc_ep, struct ucred *ucred) );
_PROTOTYPE( ssize_t pread64, (int fd, void *buf, size_t count, u64_t where));
_PROTOTYPE( ssize_t pwrite64, (int fd, const void *buf, size_t count,
u64_t where));
#endif