Re: [nfsv4] [RFD] How to interpret empty path components in fs_locations/fs_locations_info

Trond Myklebust <trond.myklebust@fys.uio.no> Thu, 21 October 2010 19:31 UTC

Return-Path: <trond.myklebust@fys.uio.no>
X-Original-To: nfsv4@core3.amsl.com
Delivered-To: nfsv4@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id AA1683A6AA7 for <nfsv4@core3.amsl.com>; Thu, 21 Oct 2010 12:31:08 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -6.438
X-Spam-Level:
X-Spam-Status: No, score=-6.438 tagged_above=-999 required=5 tests=[AWL=0.161, BAYES_00=-2.599, RCVD_IN_DNSWL_MED=-4]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id Mejj1ezi00AB for <nfsv4@core3.amsl.com>; Thu, 21 Oct 2010 12:31:04 -0700 (PDT)
Received: from mail-out2.uio.no (mail-out2.uio.no [129.240.10.58]) by core3.amsl.com (Postfix) with ESMTP id B890D3A6A64 for <nfsv4@ietf.org>; Thu, 21 Oct 2010 12:31:03 -0700 (PDT)
Received: from mail-mx2.uio.no ([129.240.10.30]) by mail-out2.uio.no with esmtp (Exim 4.69) (envelope-from <trond.myklebust@fys.uio.no>) id 1P90sR-00069w-Gv; Thu, 21 Oct 2010 21:32:39 +0200
Received: from c-68-40-206-115.hsd1.mi.comcast.net ([68.40.206.115] helo=[192.168.1.29]) by mail-mx2.uio.no with esmtpsa (SSLv3:CAMELLIA256-SHA:256) user trondmy (Exim 4.69) (envelope-from <trond.myklebust@fys.uio.no>) id 1P90sQ-0006t2-Nn; Thu, 21 Oct 2010 21:32:39 +0200
From: Trond Myklebust <trond.myklebust@fys.uio.no>
To: david.noveck@emc.com
In-Reply-To: <BF3BB6D12298F54B89C8DCC1E4073D8002851EED@CORPUSMX50A.corp.emc.com>
References: <1287523510.9356.38.camel@heimdal.trondhjem.org> <BF3BB6D12298F54B89C8DCC1E4073D8002851EED@CORPUSMX50A.corp.emc.com>
Content-Type: text/plain; charset="UTF-8"
Date: Thu, 21 Oct 2010 15:32:36 -0400
Message-ID: <1287689556.9144.79.camel@heimdal.trondhjem.org>
Mime-Version: 1.0
X-Mailer: Evolution 2.30.3 (2.30.3-1.fc13)
Content-Transfer-Encoding: 7bit
X-UiO-Ratelimit-Test: rcpts/h 6 msgs/h 2 sum rcpts/h 6 sum msgs/h 2 total rcpts 1064 max rcpts/h 20 ratelimit 0
X-UiO-Spam-info: not spam, SpamAssassin (score=-5.0, required=5.0, autolearn=disabled, UIO_MAIL_IS_INTERNAL=-5, uiobl=NO, uiouri=NO)
X-UiO-Scanned: 16D7867620EEACC51E4790B8C005E298F33ECCF7
X-UiO-SPAM-Test: remote_host: 68.40.206.115 spam_score: -49 maxlevel 80 minaction 2 bait 0 mail/h: 2 total 426 max/h 7 blacklist 0 greylist 0 ratelimit 0
Cc: nfsv4@ietf.org
Subject: Re: [nfsv4] [RFD] How to interpret empty path components in fs_locations/fs_locations_info
X-BeenThere: nfsv4@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: NFSv4 Working Group <nfsv4.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/nfsv4>, <mailto:nfsv4-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/nfsv4>
List-Post: <mailto:nfsv4@ietf.org>
List-Help: <mailto:nfsv4-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/nfsv4>, <mailto:nfsv4-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 21 Oct 2010 19:31:09 -0000

On Tue, 2010-10-19 at 21:08 -0400, david.noveck@emc.com wrote:
> >      1. The server may specify a 'pathname4' entry with no components
> >      2. The server may specify a 'pathname4' with a single component
> of
> >         length 0.
> 
> > The following question then arose: if we allow representations 
> > of type 2. above, then presumably we must also allow for the fact 
> > that the server may embed zero-length components anywhere in the 
> > 'pathname4' array. 
> 
> Why do you presume that?
> 
> I guess it is the only way you can make representation 2 appear logical.
> 
> I just don't think that representation 2 is logical.  Representation 1
> makes the most sense having more than one representation for the same
> thing does not really make sense.
> 
> But we have a practical problem, in that some servers generate
> representation 2 and it doesn't seem fair at this point to reject what
> they are sending if we can figure out what was intended.  The spec
> didn't tell them to do something else.
> 
> So I think it makes sense to say:
> 
>      you SHOULD send representation 1.
>      you MAY send representation 2.
>      you MUST NOT send a pathname4 with a zero-length component 
>          unless it is an instance of representation 2.

Agreed.

>      you MUST accept representation 1.
>      you SHOULD accept representation 2.

Agreed

>      you MUST reject a pathname 4 with a zero-length component
>          unless it is an instance of representation 2. 

I'm not sure I agree with this. If a client is given a crazy pathname by
the server, through an fs_locations request, but it still manages to
make sense of it, then why shouldn't it make the attempt? The
alternative would be to tell the application 'EIO'...

Cheers
  Trond

> -----Original Message-----
> From: nfsv4-bounces@ietf.org [mailto:nfsv4-bounces@ietf.org] On Behalf
> Of Trond Myklebust
> Sent: Tuesday, October 19, 2010 5:25 PM
> To: nfsv4@ietf.org
> Subject: [nfsv4] [RFD] How to interpret empty path components in
> fs_locations/fs_locations_info
> 
> Hi,
> 
> An issue was raised in the fedfs concall last week concerning how to
> represent the root directory in fs_locations/fs_locations_info.
> 
> As near as the group on the call could determine, there are 2 possible
> representations, neither of which appear to be explicitly forbidden by
> the spec:
> 
>      1. The server may specify a 'pathname4' entry with no components
>      2. The server may specify a 'pathname4' with a single component of
>         length 0.
> 
> The following question then arose: if we allow representations of type
> 2. above, then presumably we must also allow for the fact that the
> server may embed zero-length components anywhere in the 'pathname4'
> array. We assume that the interpretation would then be the same as a
> POSIX path of the form /a/b/////c (i.e. the path should be interpreted
> as equivalent to /a/b/c)?
> 
> The question we'd like to put to the list is therefore whether or not
> clients should be required to deal with this, or whether the spec should
> be amended to discourage (or even forbid) servers from using this kind
> of representation for a path?
> 
> Cheers
>   Trond
> 
> _______________________________________________
> nfsv4 mailing list
> nfsv4@ietf.org
> https://www.ietf.org/mailman/listinfo/nfsv4
>