Re: Symantec LiveUpdate breaks squid.

From: Henrik Nordstrom <hno@dont-contact.us>
Date: Fri, 10 Oct 1997 23:43:49 +0200

Andrew Gillham wrote:

> I'm not sure why ftpget strips the leading slash off, this seems very
> much like a bug to me. Any ftp requests where the remote ftp server
> doesn't set the CWD to '/', will inexplicitly fail.

It is defenitely not a bug. It is defined by HTTP. The specification
rougthly says that each path component (that is between the /'es) should
be interpreated as a CWD command. So given the URL
ftp://cust-read:Rcus-01#@update.symantec.com/where/ever/ the
interpretation is

Open FTP connection to update.symantec.com
USER cust-read
PASS Rcus-01#
CWD where
CWD ever
LIST (since it ends in /)

So if the FTP server starts with cwd in the directory

/opt/someting/other

you should end up in the directory

/opt/somethin/other/where/ever

The way to force a CWD / is to use a encoded / as the first character

ftp://cust-read:Rcus-01#@update.symantec.com/%2fwhere/ever/

Which should be interpreated as

CWD /where
CWD ever

If this fails, then it is as a bug.

This can perhaps be optimized to

CWD /where/ever

but it is not a 100% safe bet. It is possible for one CWD command to do
such changes that the multiple CWDs have a differend outcome than if all
was joined using / (the / notation is a UNIXish thing.. There is FTP
servers for a wide range of strange platforms out there.. where most can
handle a UNIXish path notation, but not all of them.. especially for
non-anonymous FTP since this usually have access to many parts of the
system, and not only the FTP area..)

---
Henrik Nordström
Former Squid Hacker
Received on Fri Oct 10 1997 - 14:57:31 MDT

This archive was generated by hypermail pre-2.1.9 : Tue Dec 09 2003 - 16:37:16 MST