Subject: [nfsv4] creating a named attribute

From: [email-masked]
Date: Sun, 16 May 2004 14:53:15 -0400 (EDT)

In Sec. 5.3, it seems to indicate that a Create Op can be used to create
a named attribute.

However, in the xdr in Sec. 18, NF4NAMEDATTR is not listed in the
union createtype4 switch for Create. Is this just a typo?

Thanks, rick

_______________________________________________
nfsv4 mailing list
[email-masked]
https://www1.ietf.org/mailman/listinfo/nfsv4

---

From: Spencer Shepler <[email-masked]>
Date: Sun, 16 May 2004 20:41:44 -0500

> union createtype4 switch for Create. Is this just a typo?

Section 5.3 is wrong.  Named attributes are created just like regular
files are created, with the OPEN operation.  CREATE is just for
objects of the types enumerated in createtype4.

Spencer

---

From: Trond Myklebust <[email-masked]>
Date: Sun, 16 May 2004 22:50:26 -0400

> objects of the types enumerated in createtype4.

Oooh... Does that mean they can be delegated?

If not, why are we using OPEN rather than the more usual LOOKUP and/or
CREATE?

Cheers,
  Trond

---

From: Spencer Shepler <[email-masked]>
Date: Sun, 16 May 2004 21:59:16 -0500

> Oooh... Does that mean they can be delegated?

Yes, they can be delegated.

> If not, why are we using OPEN rather than the more usual LOOKUP and/or

See above. :-)

---

From: Trond Myklebust <[email-masked]>
Date: Sun, 16 May 2004 23:07:02 -0400

> Yes, they can be delegated.

I assume also that the various OPEN flags, such as O_EXCL and the
Windows shares are also valid here?

...Argh... So why wasn't this model chosen for ACLs????

Cheers,
  Trond

---

From: Spencer Shepler <[email-masked]>
Date: Sun, 16 May 2004 22:22:27 -0500

> Windows shares are also valid here?

Yes, that is my interpretation.

> ...Argh... So why wasn't this model chosen for ACLs????

ACLs are semantically defined in the protocol, have structure
and are therefore understood by the NFS protocol itself.
Named attributes are not.

...and no one thought to ask...

Spencer

---

From: Trond Myklebust <[email-masked]>
Date: Sun, 16 May 2004 23:42:33 -0400

> and are therefore understood by the NFS protocol itself.

They lack one important feature, though: there is no way to determine
their size a priori... This is where the OPEN + delegation + READ/WRITE
model is superior.

Note: Linux servers will in principle support such a model since our VFS
currently implements ACLs as a special case of an extended attribute. It
might therefore be worth thinking about implementing something like this
in some future NFS subversion...

> ...and no one thought to ask...

Ah... This I can believe...

Cheers,
  Trond

---

From: Trond Myklebust <[email-masked]>
Date: Mon, 17 May 2004 00:02:09 -0400

> Ah... This I can believe...

OK... That probably sounds a bit unfair...

If you are holding a delegation, then my interpretation is that the
server is obliged to recall it if someone modifies the ACLs, so ACLs do
sort of fit into the delegation model. Furthermore, a client could in
principle call OPEN() before modifying an ACL in order to attempt to
maintain cache consistency.

That said, my point about them not having any known size (and indeed the
fact that there appears to be no limit to their size) still stands. In
that respect, ACLs still appear to differ from all the other file
attributes...

Cheers,
  Trond