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).
		
			
				
	
	
		
			28 lines
		
	
	
		
			610 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			28 lines
		
	
	
		
			610 B
		
	
	
	
		
			C
		
	
	
	
	
	
#ifndef __SYS_UCRED_H
 | 
						|
#define __SYS_UCRED_H
 | 
						|
 | 
						|
struct ucred_old
 | 
						|
{
 | 
						|
	pid_t   pid;
 | 
						|
	short   uid;
 | 
						|
	char   gid;
 | 
						|
};
 | 
						|
 | 
						|
struct ucred
 | 
						|
{
 | 
						|
	pid_t   pid;
 | 
						|
	uid_t   uid;
 | 
						|
	gid_t   gid;
 | 
						|
};
 | 
						|
 | 
						|
/* Userland's view of credentials. This should not change */
 | 
						|
struct uucred {
 | 
						|
        unsigned short  cr_unused;              /* not used, compat */
 | 
						|
        uid_t           cr_uid;                 /* effective user id */
 | 
						|
        gid_t           cr_gid;                 /* effective group id */
 | 
						|
        short           cr_ngroups;             /* number of groups */
 | 
						|
        gid_t           cr_groups[NGROUPS_MAX];     /* groups */
 | 
						|
};
 | 
						|
 | 
						|
#endif
 |