Ticket #652: bcfg2-py26.diff
File bcfg2-py26.diff, 1.4 KB (added by Torsten Rehn <[email protected]…>, 14 years ago) |
---|
-
src/lib/Proxy.py
16 16 import logging 17 17 import socket 18 18 import ssl 19 import string 20 import sys 19 21 import time 20 22 import urlparse 21 23 import xmlrpclib 22 24 25 version = string.split(string.split(sys.version)[0], ".") 26 has_py26 = map(int, version) >= [2, 6] 27 23 28 __all__ = ["ComponentProxy", "RetryMethod", "SSLHTTPConnection", "XMLRPCTransport"] 24 29 25 30 class RetryMethod(_Method): … … 52 57 class SSLHTTPConnection(httplib.HTTPConnection): 53 58 def __init__(self, host, port=None, strict=None, timeout=90, key=None, 54 59 cert=None, ca=None): 55 httplib.HTTPConnection.__init__(self, host, port, strict, timeout) 60 if not has_py26: 61 httplib.HTTPConnection.__init__(self, host, port, strict) 62 else: 63 httplib.HTTPConnection.__init__(self, host, port, strict, timeout) 56 64 self.key = key 57 65 self.cert = cert 58 66 self.ca = ca … … 63 71 64 72 def connect(self): 65 73 rawsock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) 66 rawsock.settimeout(self.timeout) 74 if has_py26: 75 rawsock.settimeout(self.timeout) 67 76 self.sock = ssl.SSLSocket(rawsock, cert_reqs=self.ca_mode, 68 77 ca_certs=self.ca, suppress_ragged_eofs=True, 69 78 keyfile=self.key, certfile=self.cert)