comparison mercurial/httpclient/socketutil.py @ 19748:59df9e52b5bb stable

httpclient: apply upstream revision da7579b034a4 to fix SSL problems (issue4038)
author Augie Fackler <raf@durin42.com>
date Wed, 18 Sep 2013 14:45:28 -0400
parents 42fcb2f7787d
children 328739ea70c3
comparison
equal deleted inserted replaced
19708:fd4f612f7cb6 19748:59df9e52b5bb
104 if x.args[0] == socket.SSL_ERROR_WANT_READ: 104 if x.args[0] == socket.SSL_ERROR_WANT_READ:
105 continue 105 continue
106 else: 106 else:
107 raise x 107 raise x
108 108
109 _PROTOCOL_SSLv3 = 1 109 _PROTOCOL_SSLv23 = 2
110 110
111 CERT_NONE = 0 111 CERT_NONE = 0
112 CERT_OPTIONAL = 1 112 CERT_OPTIONAL = 1
113 CERT_REQUIRED = 2 113 CERT_REQUIRED = 2
114 114
116 # that's like an upstream method. 116 # that's like an upstream method.
117 # 117 #
118 # pylint: disable=W0613,R0913 118 # pylint: disable=W0613,R0913
119 def wrap_socket(sock, keyfile=None, certfile=None, 119 def wrap_socket(sock, keyfile=None, certfile=None,
120 server_side=False, cert_reqs=CERT_NONE, 120 server_side=False, cert_reqs=CERT_NONE,
121 ssl_version=_PROTOCOL_SSLv3, ca_certs=None, 121 ssl_version=_PROTOCOL_SSLv23, ca_certs=None,
122 do_handshake_on_connect=True, 122 do_handshake_on_connect=True,
123 suppress_ragged_eofs=True): 123 suppress_ragged_eofs=True):
124 """Backport of ssl.wrap_socket from Python 2.6.""" 124 """Backport of ssl.wrap_socket from Python 2.6."""
125 if cert_reqs != CERT_NONE and ca_certs: 125 if cert_reqs != CERT_NONE and ca_certs:
126 raise CertificateValidationUnsupported( 126 raise CertificateValidationUnsupported(