OpenSTA 1.4.2.34
IE 6.0.2800.1106CO
Windows 2000 Professional SP4 5.00.2195
I believe I found a bug in the CBrowserInformation
class and its child classes regarding how you process
the registry string of proxy information.
Your functions look for "http" and "https"
respectively, but do not check for equal signs but
rather look for the first instance of "http" or "https".
This results in the original IE6 proxy string of:
ftp=http-proxy.MYDOMAIN.COM:80;gopher=http-proxy.MYDOMAIN.COM:80;http=http-proxy.MYDOMAIN.COM:80;https=https-proxy.MYDOMAIN.COM:80
becoming:
ftp=http-MYMACHINE:80;gopher=http-proxy.MYDOMAIN.COM:80;http=http-proxy.MYDOMAIN.COM:80;https=MYMACHINE:80
where it should be something like:
ftp=http-proxy.MYDOMAIN.COM:80;gopher=http-proxy.MYDOMAIN.COM:80;http=MYMACHINE:80;https=MYMACHINE:80
Note that my company's proxy machines are named
"http-proxy" and "https-proxy" and since the string is
in alphabetical order, your function hits the first
instance of "http" in the FTP string, and edits that.
I traced this bug through the source code, but I have
not worked out a fix as I do not have the compiler
available or experience with building this large a project.
Although I only tested on IE6, I imagine this issue
would also appear in prior versions of IE, and perhaps NS.
Logged In: YES
user_id=19748
This should be a relatively easy fix - thanks for spotting
and putting the effort in to investigate further. Expect it
a fix to be included in the next release cycle (1.4.4)
More info:
- problem does not show itself if you have the "Use the same
proxy for all protocols" checkbox ticked.
Workarounds
- refer to your proxy by its IP address or another name not
containing 'http'
- use the Remote/Manual recording mechanism to avoid issue
altogether