Date: Sat, 07 Apr 2007 10:20:14 -0700 From: Nate Lawson <nate@root.org> To: =?ISO-8859-1?Q?Dag-Erling_Sm=F8rgrav?= <des@des.no> Cc: current@freebsd.org Subject: Re: libfetch ftp patch for less latency Message-ID: <4617D2CE.1050502@root.org> In-Reply-To: <86fy7nq4q1.fsf@dwp.des.no> 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>
next in thread | previous in thread | raw e-mail | index | archive | help
Dag-Erling Smørgrav wrote: > Dag-Erling Smørgrav <des@des.no> writes: >> Pieter de Goeje <pieter@degoeje.nl> writes: >>> Dag-Erling Smørgrav <des@des.no> 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
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4617D2CE.1050502>