Re: [gnome-network]Transfer Manager (again!)



On Mar , 2003-10-21 at 14:54, Manuel Clos wrote:
> Rodney Dawes wrote:
> > Heh. Try adding HTTP Redirect support. It's not easy, and will probably
> > require a major rewrite of the HTTP module. (Which I think should be
> > done anyway, so that it uses libcurl, as well as FTP).
> 
> I have not looked in depth to the redirect problem. I'll do in short. 
> Basically the case is detected but not handled.

No. Well, yes and no. It is detected and not handled could be said for
all headers and HTTP status codes that there is not specific code in the
module for already. However, that is not really the case. There are 3
common ways to do redirection. Firstly there are the 30x status codes. I
believe there are defines for these values, so that they have pretty
macro names, but nothing is done with them. Then there is the Location:
HTTP header. I tried to patch gnome-vfs to handle this method already,
and ended up being stuck between a rock and a recursively hard place. It
needs sufficient rewriting to be able to function correctly. There is
not enough information internal to handle this. However, there is a
callback that is passed all of the extra headers in a list, and support
for Location: can be added to specific clients. Then there is the HTML
meta tag for doing a refresh, with a timeout. This requires parsing the
<head/> tag of the HTML document, and doing the necessary timeout stuff,
if one is set. So, this can be done in the client as well.

> Anyway teuf helps a lot. So it is doable.

I didn't say it wasn't doable. I said it wasn't doable in the current
code. It will require sufficient rewriting of the HTTP module.

> Have you proposed the switch to libcurl in the gnome-vfs list? this will 
> be good since if the switch is going to happen, it makes no sense to fix 
> current gnome-vfs code.

I have not proposed this to the gnome-vfs list, no. But, I recall seeing
someone else having proposed the same thing. I don't remember where
though.

-- dobey





[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]