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

<david.noveck@emc.com> Wed, 20 October 2010 01:08 UTC

Return-Path: <david.noveck@emc.com>
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 803B03A697B for <nfsv4@core3.amsl.com>; Tue, 19 Oct 2010 18:08:17 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -6.672
X-Spam-Level:
X-Spam-Status: No, score=-6.672 tagged_above=-999 required=5 tests=[AWL=-0.073, 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 N2KkPUeuGxKE for <nfsv4@core3.amsl.com>; Tue, 19 Oct 2010 18:08:16 -0700 (PDT)
Received: from mexforward.lss.emc.com (mexforward.lss.emc.com [128.222.32.20]) by core3.amsl.com (Postfix) with ESMTP id 497A53A6941 for <nfsv4@ietf.org>; Tue, 19 Oct 2010 18:08:16 -0700 (PDT)
Received: from hop04-l1d11-si01.isus.emc.com (HOP04-L1D11-SI01.isus.emc.com [10.254.111.54]) by mexforward.lss.emc.com (Switch-3.4.3/Switch-3.4.3) with ESMTP id o9K19hII020333 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Tue, 19 Oct 2010 21:09:43 -0400
Received: from mailhub.lss.emc.com (mailhub.lss.emc.com [10.254.221.251]) by hop04-l1d11-si01.isus.emc.com (RSA Interceptor); Tue, 19 Oct 2010 21:09:37 -0400
Received: from corpussmtp3.corp.emc.com (corpussmtp3.corp.emc.com [10.254.169.196]) by mailhub.lss.emc.com (Switch-3.4.3/Switch-3.4.3) with ESMTP id o9K18sG1013695; Tue, 19 Oct 2010 21:08:55 -0400
Received: from CORPUSMX50A.corp.emc.com ([128.221.62.45]) by corpussmtp3.corp.emc.com with Microsoft SMTPSVC(6.0.3790.4675); Tue, 19 Oct 2010 21:08:54 -0400
x-mimeole: Produced By Microsoft Exchange V6.5
Content-class: urn:content-classes:message
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
Date: Tue, 19 Oct 2010 21:08:54 -0400
Message-ID: <BF3BB6D12298F54B89C8DCC1E4073D8002851EED@CORPUSMX50A.corp.emc.com>
In-Reply-To: <1287523510.9356.38.camel@heimdal.trondhjem.org>
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
Thread-Topic: [nfsv4] [RFD] How to interpret empty path components in fs_locations/fs_locations_info
Thread-Index: Actv1FE/JV6+wco+S1aRehsECrdeiAAHW1AQ
References: <1287523510.9356.38.camel@heimdal.trondhjem.org>
From: david.noveck@emc.com
To: trond.myklebust@fys.uio.no, nfsv4@ietf.org
X-OriginalArrivalTime: 20 Oct 2010 01:08:54.0602 (UTC) FILETIME=[5D7732A0:01CB6FF3]
X-EMM-MHVC: 1
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: Wed, 20 Oct 2010 01:08:17 -0000

>      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.

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


-----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