Return-Path: Delivered-To: apmail-apr-dev-archive@www.apache.org Received: (qmail 63342 invoked from network); 10 Feb 2006 20:50:40 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (209.237.227.199) by minotaur.apache.org with SMTP; 10 Feb 2006 20:50:40 -0000 Received: (qmail 98757 invoked by uid 500); 10 Feb 2006 20:50:38 -0000 Delivered-To: apmail-apr-dev-archive@apr.apache.org Received: (qmail 98724 invoked by uid 500); 10 Feb 2006 20:50:38 -0000 Mailing-List: contact dev-help@apr.apache.org; run by ezmlm Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Id: Delivered-To: mailing list dev@apr.apache.org Received: (qmail 98710 invoked by uid 99); 10 Feb 2006 20:50:38 -0000 Received: from asf.osuosl.org (HELO asf.osuosl.org) (140.211.166.49) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 10 Feb 2006 12:50:38 -0800 X-ASF-Spam-Status: No, hits=0.0 required=10.0 tests= X-Spam-Check-By: apache.org Received-SPF: pass (asf.osuosl.org: domain of wrowe@rowe-clan.net designates 207.155.252.7 as permitted sender) Received: from [207.155.252.7] (HELO illustrious.cnchost.com) (207.155.252.7) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 10 Feb 2006 12:50:37 -0800 Received: from [192.168.0.21] (c-24-13-128-132.hsd1.il.comcast.net [24.13.128.132]) by illustrious.cnchost.com id PAA19201; Fri, 10 Feb 2006 15:49:51 -0500 (EST) [ConcentricHost SMTP Relay 1.17] Errors-To: Message-ID: <43ECFBEC.9030002@rowe-clan.net> Date: Fri, 10 Feb 2006 14:47:40 -0600 From: "William A. Rowe, Jr." User-Agent: Mozilla Thunderbird 1.0.7-1.1.fc3 (X11/20050929) X-Accept-Language: en-us, en MIME-Version: 1.0 To: Brad Nicholes CC: wrowe@apache.org, dev@apr.apache.org Subject: Re: svn commit: r376473 - /apr/apr/trunk/test/testnames.c References: <20060209225816.36629.qmail@minotaur.apache.org> <43EB77D4.6720.00AC.0@novell.com> <43EBE355.6020705@rowe-clan.net> <43EC7C66.6720.00AC.0@novell.com> <43ECF0A9.6080805@rowe-clan.net> <43EC9634.6720.00AC.0@novell.com> In-Reply-To: <43EC9634.6720.00AC.0@novell.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Virus-Checked: Checked by ClamAV on apache.org X-Spam-Rating: minotaur.apache.org 1.6.2 0/1000/N Brad Nicholes wrote: >>>>On 2/10/2006 at 12:59:37 pm, in message > > <43ECF0A9.6080805@rowe-clan.net>, > "William A. Rowe, Jr." wrote: > >>Brad Nicholes wrote: >> >>>>>>On 2/9/2006 at 5:50:29 pm, in message >>> >>><43EBE355.6020705@rowe-clan.net>, >>>"William A. Rowe, Jr." wrote: >>> >>> >>>>Brad Nicholes wrote: >>>> >>>> >>>>>This doesn't quite fix it either. For NetWare the returns are >>>>> >>>>> ABTS_INT_EQUAL(tc, APR_EINCOMPLETE, rv); >>>>> ABTS_STR_EQUAL(tc, "/", root); >>>> >>>>Ok I'm confused :) >>>> >>>>APR_EINCOMPLETE is a fatal condition. Is the path "//foo/bar" >>> >>>valid? >>> >>> >>>>If so, it's the result that's wrong. >>>> >>>>Bill >>> >>> >>>So according to the logic that I am seeing for both Win32 and Unix, >>>NetWare is a cross between them. NetWare does not understand UNC > > paths > >>>so returning APR_EINCOMPLETE with "//" would be incorrect. Also, >>>returning APR_SUCCESS with "/" would be incorrect as well since a >>>complete path would require a volume specifier such as "SYS:". So > > I > >>>believe that what it is returning now, APR_EINCOMPLETE with "/" is >>>correct on NetWare. >>> >>>Am I missing something? >> >>Yup. On Win32/OS2, the path '/foo' root is 'c:/' path 'foo'. The > > result > >>is complete because it was rooted (to currect drive). >> >>With UNC paths, the path '//' is incomplete because we don't know > > the > >>machine and drive. >> >>On Netware, is the path '/foo' sufficiently absolute? I would think > > it is. > > No, not really because NetWare doesn't have a good concept of "current > working directory". IOW, if Apache starts from vol2:/apache2, calling > getcwd() doesn't necessarily get you "vol2:/apache2" back. Given a path > of "/foo", NetWare will assume "sys:/foo" which isn't necessarily > correct. > > > >>Of course you can use 'bar:bash/foo', and 'bar/bash' is not absolute, > > while > >>the 'bar:/foo' or ':bash/foo' syntaxes are probably incomplete. >> >>The incomplete root result implies that the system can't figure out > > how to > >>break apart the path because some information is missing. You can't, > > on any > >>UNC path, do a directory listing of '//foo/*'. You can for > > '//foo/bar/*' > >>and >>you can for '/bash/*'. >> >>Bil > > > Bottom line is that neither of the results in the test seem valid on > NetWare. Returning APR_SUCCESS with a path of "/" seems wrong because > an assumption is being made about what "/" means. And returning > APR_EINCOMPLETE with a path of "//" seems wrong because the path isn't > incomplete, it is invalid. Successive slashes are legal (and should be compressed). But I can see where you are right, if the Netware port doesn't accept the '/foo' path, then it's wrong (but I thought '/foo' implies local:sys/foo). So we should special-case this result on Netware. I'm almost of a mind that since 'machine:vol\path' is the normal syntax, and we have several platforms which support similar, that we might want to permit '//machine/vol/path' on Netware as a portable syntax, accepting either . Bill