From: Noveck, Dave (Dave.Noveck@netapp.com)
Date: 07/24/02-08:47:31 AM Z
Message-ID: <8C610D86AF6CD4119C9800B0D0499E336A8F83@red.nane.netapp.com> From: "Noveck, Dave" <Dave.Noveck@netapp.com> Subject: RE: Delegations mandatory? Date: Wed, 24 Jul 2002 06:47:31 -0700 A simple client can immediately return any delegation that it gets. Of course it would be silly for the server to send a delegation to someone who isn't going to do anything useful with it, but the fact that there is no operative callback path, should give the server a clue. I suppose there no harm in formalizing this, as long as someone else does the actual work. Wait a minute! Since this is in the delegation area, that means I would probably do the work. Seriously, I'm still of the If-it-ain't-really-really-broke- don't-fix-it persuasion, but I wouldn't stand in the way of group consensus on this issue, even if I would have to write the text. -----Original Message----- From: Peter Åstrand [mailto:astrand@lysator.liu.se] Sent: Wednesday, July 24, 2002 6:49 AM To: nfsv4-wg@sunroof.eng.sun.com Subject: Delegations mandatory? Is it mandatory for clients to support delegations? The description of OPEN makes it look like that: "Note that delegation is up to the server to decide. The client should never assume that delegation will or will not be granted in a particular instance. It should always be prepared for either case." Also, the description of SETCLIENTID: "The callback information provided in this operation will be used if the client is provided an open delegation at a future point. Therefore, the client must correctly reflect the program and port numbers for the callback program at the time SETCLIENTID is used." I think it's a bit strange if the spec says that clients must implement support for delegations. Simple clients, without delegation support, are often useful. In practice, one way of "preventing" delegations is to specify an "invalid" cb_client4 in SETCLIENTID. This seems to work at least with the CITI Linux server. The only problem is that the spec does not describe how an "invalid" cb_client4 looks like. I think it should. We could say that if SETCLIENTID4args.callback.cb_program == 0 and SETCLIENTID4args.callback.cb_location.r_netid == "" and SETCLIENTID4args.callback.cb_location.r_addr == "", then the server promises not to grant delegations. Or something like that. -- /Peter Åstrand <astrand@lysator.liu.se>
This archive was generated by hypermail 2.1.2 : 03/04/05-01:50:05 AM Z CST