X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=PLC%2FPyCurl.py;h=c8a3911c33d1ccddf72c1f87bdb814ea9e271489;hb=afaa86e866019b80eb3524706fc19837047c2e49;hp=32051b4ee64b7fa52c84f2c49d5bc35e6ad5cde1;hpb=b9034d9c8f7e923d13aae4fe23e894cfc31f214a;p=plcapi.git diff --git a/PLC/PyCurl.py b/PLC/PyCurl.py index 32051b4..c8a3911 100644 --- a/PLC/PyCurl.py +++ b/PLC/PyCurl.py @@ -5,17 +5,16 @@ # Mark Huang # Copyright (C) 2006 The Trustees of Princeton University # -# $Id$ -# import os -import xmlrpclib +import xmlrpc.client import pycurl from tempfile import NamedTemporaryFile -class PyCurlTransport(xmlrpclib.Transport): +class PyCurlTransport(xmlrpc.client.Transport): def __init__(self, uri, cert = None, timeout = 300): - xmlrpclib.Transport.__init__(self) + if hasattr(xmlrpc.client.Transport,'__init__'): + xmlrpc.client.Transport.__init__(self) self.curl = pycurl.Curl() # Suppress signals @@ -50,7 +49,7 @@ class PyCurlTransport(xmlrpclib.Transport): self.body = "" def body(buf): self.body += buf - self.curl.setopt(pycurl.WRITEFUNCTION, body) + self.curl.setopt(pycurl.WRITEFUNCTION, body) def request(self, host, handler, request_body, verbose = 1): # Set verbosity @@ -66,13 +65,13 @@ class PyCurlTransport(xmlrpclib.Transport): response = self.body self.body = "" errmsg="" - except pycurl.error, err: + except pycurl.error as err: (errcode, errmsg) = err if errcode == 60: - raise Exception, "PyCurl: SSL certificate validation failed" + raise Exception("PyCurl: SSL certificate validation failed") elif errcode != 200: - raise Exception, "PyCurl: HTTP error %d -- %r" % (errcode,errmsg) + raise Exception("PyCurl: HTTP error %d -- %r" % (errcode,errmsg)) # Parse response p, u = self.getparser()