Darin, this is the bug I mentioned to you last night on IRC. If you use shift-reload to reload an ftp url, mozilla sends an If-Modified-Since header to the proxy, instead of forcing the proxy to revalidate with a Pragma: No-Cache, and so no revalidation is done. This is, I think (as darin guessed), because the load attributes aren't being passed through from the ftp channel to the proxy channel. I'll attach a patch which survived quick testing. I don't know if this is a newcache specific bug - it probably happened before. IMHO, the routines which are forwarded off to the proxy channel are very arbitary - the only ones which shouldn't be forwarded are the getters and setters for the uri, original uri, and name. Correct?
looks correct to me too. when the ftp channel is added to a load group, its load attributes will be set. these load attributes weren't being passed down to the proxy (HTTP) channel, and i think your patch should fix the problem. be sure to do enough testing to convince yourself that this simple change is sufficient. thx! r/sr=darin
The load attributes aren't used by nsFTPChannel.cpp at all, and the only other use in ftp is in an #ifdef DOUGT_NEW_CACHE part in nsFtpConnectionThread.cpp, which isn't reached when you're using a proxy, AFAICS. dougt: Am I right in my earlier comment about which methods should be forwarded to the proxy channel?
No longer blocks: 73293
right, but load attributes are used by HTTP when FTP proxies through HTTP. the load attributes come from the docshell and carry with them things like FORCE_RELOAD. if FTP does not pass these load attributes to HTTP, then HTTP will not know to go to net to fetch the resource... it may just return the cached response.
Yes - I was referring to your "check that nothing breaks" comment. BTW, I didn't mean to clear the dependant bug from this - bugzilla didn't warn me about it, just overwrote your changes. I'll file a bug on that.
Bradley, yes. When using proxies, ftp should just forward nsIChannel/nsIRequest calls to http. r=dougt. Do you want me to check this in or do you have write permissions?
fix checked in.
Status: NEW → RESOLVED
Last Resolved: 17 years ago
Resolution: --- → FIXED
Was this a dup of 59310? Is 59310 now also fixed?
Maybe. The log in that bug has the proxy returning a 200 response, which is different to what happens here. Its possible though - check if its fixes it for you :) Also see bug 73293, although I had no problem using ftp through a proxy late last year.
VERIFIED Linux 2001062021.
Status: RESOLVED → VERIFIED
Summary: When using a proxy, shift-reload does not force a refresh from the network → Proxy: FTP shift-reload does not force a refresh from the network
You need to log in before you can comment on or make changes to this bug.