From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?UTF-8?B?SmVhbi1QaWVycmUgQW5kcsOp?= Subject: Re: [PATCH] fuse: allow umask processing in userspace Date: Sat, 04 Jul 2009 16:51:16 +0200 Message-ID: <4A4F6C64.4020800@wanadoo.fr> References: <20090618093635.GQ17358@hasgksssven.desy.de> <4A3BC22A.80907@wanadoo.fr> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: QUOTED-PRINTABLE Cc: utcke+fuse@informatik.uni-hamburg.de, fuse-devel@lists.sourceforge.net, linux-fsdevel@vger.kernel.org, Szabolcs Szakacsits To: Miklos Szeredi Return-path: Received: from smtp27.orange.fr ([80.12.242.96]:49331 "EHLO smtp27.orange.fr" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750702AbZGDOvQ convert rfc822-to-8bit (ORCPT ); Sat, 4 Jul 2009 10:51:16 -0400 In-Reply-To: Sender: linux-fsdevel-owner@vger.kernel.org List-ID: Hi Miklos, I went through the patches and the tests, and I can announce that ntfs-3g is the first fuse-based file system which passes the PJD Posix test fully, including the Posix ACL parts. Thank you for having made this possible. I used kernel 2.6.29 with your proposed patches applied to the fuse client (fuse.ko), and a simplified version of the fuse server (fuse-lite), which I upgraded manually according to your proposed patches. There were only three modifications needed not mentioned in your proposal, probably consequences of different reference versions : - new fields in attr_out and write_in - umask not copied from low level context to high level. I checked the client-server compatibility in the four possible associations (new client / old server, etc.), but of course both new client and new server are required to get the correct permissions on file creation. =46or releasing a file system source compatible with both old and new fuse.h, I check whether FUSE_CAP_DONT_MASK is defined. From now on, I can release code which will compile and run with current fuse (server and file system ready) and will benefit from permission fixes when kernels with updated fuse client will be released. There is just a point which worries me : I cannot understand how your client patch deactivates the old code which was applying the umask. I would prefer not to discover it the hard way... Regards Jean-Pierre Miklos Szeredi wrote: > On Fri, 19 Jun 2009, Jean-Pierre Andr=C3=A9 wrote: > =20 >> On the very related issue of having some way of getting >> the original permission flags (with umask not applied), >> in create(), has there been any progress ? >> =20 > > OK, here's a patch that does this, it applies on top of latest git. > Could you please give it a test? > > Even if you are not using git, you can get a "snapshot" of the git > tree from www.kernel.org. > > I'll follow up with a patch for libfuse (also against latest CVS or > 2.8.0-pre3) > > Thanks, > Miklos > > --- > This patch lets filesystems handle masking the file mode on creation. > This is needed if filesystem is using ACLs. > > - The CREATE, MKDIR and MKNOD requests are extended with a "umask" > parameter. > > - A new FUSE_DONT_MASK flag is added to the INIT request/reply. Wit= h > this the filesystem may request that the create mode is not masked= =2E > =20 -- To unsubscribe from this list: send the line "unsubscribe linux-fsdevel= " in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html