Work around httplib2 tunnelling bug

Bug #1051007 reported by Mark McLoughlin
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
python-novaclient
Fix Released
Undecided
Mark McLoughlin

Bug Description

I'm using novaclient to access an OpenStack install over a corporate squid proxy

It's a plain old HTTP connection, but httplib2 is insisting on doing CONNECT tunnelling

I'm getting a 403 Forbidden from the proxy because it's using the default squid config which rejects CONNECT to ports other than 443

More details here:

  http://code.google.com/p/httplib2/issues/detail?id=228

The upshot is we want to use PROXY_TYPE_HTTP_NO_TUNNEL for plain HTTP connections

We can hack a pretty simple workaround into novaclient to force this

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to python-novaclient (master)

Fix proposed to branch: master
Review: https://review.openstack.org/13036

Changed in python-novaclient:
assignee: nobody → Mark McLoughlin (markmc)
status: New → In Progress
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to python-novaclient (master)

Reviewed: https://review.openstack.org/13036
Committed: http://github.com/openstack/python-novaclient/commit/aaa38ce0e54d97d744826e0b353ec79329cbaf91
Submitter: Jenkins
Branch: master

commit aaa38ce0e54d97d744826e0b353ec79329cbaf91
Author: Mark McLoughlin <email address hidden>
Date: Fri Sep 14 18:31:24 2012 +0100

    Work around httplib2 tunnelling bug

    Fixes bug #1051007

    httplib2 defaults to using HTTP CONNECT tunnelling even for plain HTTP
    connections. This is problematic with proxies configured to only allow
    tunnelling to port 443. This is the default configuration for squid.

    Hack around the problem by forcing httplib2 to use the HTTP_NO_TUNNEL
    proxy type which disables tunnelling except for port 443.

    Change-Id: I59cd95ed74a9bb795779fc38fbc0935266cc8b22

Changed in python-novaclient:
status: In Progress → Fix Committed
Changed in python-novaclient:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.