[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [nfsv4] proposed slight change to ACCESS and wordsmithing changes for chapter 18 (thru the LINK operation)
> On Mon, Apr 07, 2008 at 03:00:21PM -0700, Mike Eisler wrote:
>> http://eisler.com/nfsv4-wg/2008-04-07-ch18_thru_link.html
>>
>> The slight change to ACCESS is require that servers only
>> look at the execute bits when determining if a user can execute
>> the file. The rationale is in the proposed changes.
>
> Seems sensible to me. (And the path-searching example is interesting.
> Have any users actually stumbled across that kind of problem before?)
I have war stories. The ONTAP NFSv[34] server has always returned
ACCESSx_EXECUTE when uid zero was mapped to zero (i.e. unchanged).
This caused a spectacular problem with an NFS client once.
> Sure is a lot of text, though.
I'm open to suggestions to make it more concise. This is my 4th
major iteration and the 1st was like War & Peace (an apt
metaphor this type of interop issue).
> "If the client is sending ACCESS in order to determine if the
> user can read the file, the client SHOULD set ACCESS4_READ in
> the request's access field."
>
> Do we really need to say this here?
I believe so, because the point is that even though execute bits
allow READ and OPEN for read to succeed, ACCESS (ACCESS4_READ)
is not the way to find that out; ACCESS (ACCESS4_EXECUTE) is the
one true way.
> "If the server supports read permission bits, it MUST only check
> for read permissions in the mode, acl, and dacl attributes when
> it receives an ACCESS request with ACCESS4_READ set the access
> field. The server MUST NOT also examine execute permission bits
> when determining whether the reply will have ACCESS4_READ set in
> the access field or not."
>
> Does this need to be said here?
If you don't have said, then we are open to misinterpretations. E.g.
$ ls -l a.out
ls -l a.out
---x--x--x 1 mre mkgroup-l-d 16642 Mar 31 21:59 a.out
Now, we want
test -x a.out
to succeed, and
test -r a.out
to fail, correct?
With the proposed text, we allow programs like 'test' to rely completely
on access()/NFSv4.1 ACCESS to do the right thing, without having
to inspect permission bits.
_______________________________________________
nfsv4 mailing list
nfsv4 at ietf.org
https://www.ietf.org/mailman/listinfo/nfsv4