Proxy: FTP shift-reload does not force a refresh from the network

VERIFIED FIXED in mozilla0.9.1

Status

()

Core
Networking: FTP
--
major
VERIFIED FIXED
17 years ago
16 years ago

People

(Reporter: Bradley Baetz, Assigned: dougt)

Tracking

({testcase})

Trunk
mozilla0.9.1
x86
Linux
testcase
Points:
---

Firefox Tracking Flags

(Not tracked)

Details

(URL)

Attachments

(1 attachment)

(Reporter)

Description

17 years ago
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?
(Reporter)

Comment 1

17 years ago
Created attachment 28792 [details] [diff] [review]
forward the loadattributes

Updated

17 years ago
Keywords: nsbeta1
Target Milestone: --- → mozilla0.9.1

Comment 2

17 years ago
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

Updated

17 years ago
Blocks: 73293
(Reporter)

Comment 3

17 years ago
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

Comment 4

17 years ago
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.
(Reporter)

Comment 5

17 years ago
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.
(Assignee)

Comment 6

17 years ago
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?

Comment 7

17 years ago
fix checked in.
Status: NEW → RESOLVED
Last Resolved: 17 years ago
Resolution: --- → FIXED

Comment 8

17 years ago
Was this a dup of 59310? Is 59310 now also fixed?
(Reporter)

Comment 9

17 years ago
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.

Comment 10

17 years ago
VERIFIED Linux 2001062021.
Status: RESOLVED → VERIFIED

Updated

16 years ago
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

Updated

16 years ago
Keywords: testcase
You need to log in before you can comment on or make changes to this bug.