From owner-freebsd-current@FreeBSD.ORG Sat Apr 7 17:20:20 2007 Return-Path: X-Original-To: current@freebsd.org Delivered-To: freebsd-current@FreeBSD.ORG Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id DF96616A401 for ; Sat, 7 Apr 2007 17:20:20 +0000 (UTC) (envelope-from nate@root.org) Received: from root.org (root.org [67.118.192.226]) by mx1.freebsd.org (Postfix) with ESMTP id AE66613C455 for ; Sat, 7 Apr 2007 17:20:20 +0000 (UTC) (envelope-from nate@root.org) Received: (qmail 4164 invoked from network); 7 Apr 2007 17:20:21 -0000 Received: from ppp-71-139-28-99.dsl.snfc21.pacbell.net (HELO ?10.0.0.235?) (nate-mail@71.139.28.99) by root.org with ESMTPA; 7 Apr 2007 17:20:21 -0000 Message-ID: <4617D2CE.1050502@root.org> Date: Sat, 07 Apr 2007 10:20:14 -0700 From: Nate Lawson User-Agent: Thunderbird 1.5.0.7 (X11/20061027) MIME-Version: 1.0 To: =?ISO-8859-1?Q?Dag-Erling_Sm=F8rgrav?= References: <460AE39B.4070706@root.org> <86odmcqylx.fsf@dwp.des.no> <200703291905.00192.pieter@degoeje.nl> <86k5wzq4vx.fsf@dwp.des.no> <86fy7nq4q1.fsf@dwp.des.no> In-Reply-To: <86fy7nq4q1.fsf@dwp.des.no> X-Enigmail-Version: 0.94.1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit Cc: current@freebsd.org Subject: Re: libfetch ftp patch for less latency X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 07 Apr 2007 17:20:21 -0000 Dag-Erling Smørgrav wrote: > Dag-Erling Smørgrav writes: >> Pieter de Goeje writes: >>> Dag-Erling Smørgrav writes: >>>> No. This is a violation of the FTP protocol. >>> I'm reading rfc 959 right now, and it include examples of CWD with >>> full pathname (multiple directories). Actually the rfc is kinda >>> vague about this. >> RFC959 does not require or guarantee that the path separator is /, nor >> that "CD ../foo" does what you expect. There are also issues when the >> initial CWD is not / (the document part in an FTP URL is relative to >> the initial CWD, not absolute) > > I guess I should amend "this is a violation of the FTP protocol" to > "this relies on assumptions which the FTP RFC does not allow us to > make, and is a violation of RFC1738" Obviously, it's easier to do nothing than something. So here are some options: 1. Add my patch -- if a server returns an error, I see no way it would have changed the PWD. If you say "CD GARBAGE", what reasonable system would return an error and change to some random dir? 2. Add an env variable (similar to FTP_PASSIVE_MODE, say "FTP_SINGLE_CWD") which forces the current behavior. If not set, fetch tries the multi-method first, falls back to the single-method on error. -- Nate