Hello,
That bit of urllib.py is a bit opaque, but the only thing I can see that
might be going on weird is to do with proxies. Are your coworkers using
Python <=2.4? I did a diff between the Python 2.4 and 2.5 urllib.py code
and the main differences are to do with proxy handling, but not obviously
at the root of this problem so this could be irrelevant. The one way to
really find out what is going on is to edit
/sw/lib/python2.5/urllib.py
and to put in various checks along the way. If you have adminstrator
access (which I assume you do) then you could add some debugging to the
function open_http to get (I've added five debugging lines below):
def open_http(self, url, data=None):
"""Use HTTP protocol."""
import httplib
user_passwd = None
proxy_passwd= None
if isinstance(url, str):
host, selector = splithost(url)
print 'HERE1', url, host
if host:
user_passwd, host = splituser(host)
host = unquote(host)
realhost = host
print 'HERE2', host
else:
host, selector = url
print 'HERE3', url, host
# check whether the proxy contains authorization information
proxy_passwd, host = splituser(host)
print 'HERE4', host
# now we proceed with the url we want to obtain
urltype, rest = splittype(selector)
url = rest
user_passwd = None
if urltype.lower() != 'http':
realhost = None
else:
realhost, rest = splithost(rest)
if realhost:
user_passwd, realhost = splituser(realhost)
if user_passwd:
selector = "%s://%s%s" % (urltype, realhost, rest)
if proxy_bypass(realhost):
host = realhost
print 'HERE5', host
#print "proxy via http:", host, selector
if not host: raise IOError, ('http error', 'no host given')
Wayne
On Tue, 25 Mar 2008, Jeremy wrote:
> Thanks for the quick replies. I do not think it is a firewall issue (although I am behind one), as my
> coworkers (running Linux or Tiger) are able to update just fine.
>
> Any further ideas?
>
> Thanks,
> Jeremy
>
|