-=[ Mr. Bumblebee ]=-
_Indonesia_
ó
Ì\,Tc @ sQ d Z d d l Z d d l Z e j e ƒ Z y d d l Z e j e Z WnA e
k
r d d l Z d d l Z e
e d e ƒ Z e Z n Xy
e j Z Wn e k
r· d „ Z n Xe rå e j Z e j Z e j Z e j Z nR d e j f d „ ƒ YZ d Z d Z d Z d Z d d e e e d e e d
„ Z d e f d „ ƒ YZ d S(
sÅ Abstraction to simplify socket use for Python < 2.6
This will attempt to use the ssl module and the new
socket.create_connection method, but fall back to the old
methods if those are unavailable.
iÿÿÿÿNt HTTPSHandlerc C sñ | \ } } d } d } xº t j | | d t j ƒ D] } | \ } } } } }
y9 t j | | | ƒ } t j d | | ƒ | j |
ƒ WnE t j k
rÏ } t j d | | ƒ | rà | j ƒ n d } q4 n XPq4 W| sí t j | ƒ ‚ n | S( s5 Backport of socket.create_connection from Python 2.6.s! getaddrinfo returns an empty listi s connect: (%s, %s)s connect fail: %s %sN( t Nonet sockett getaddrinfot SOCK_STREAMt loggert infot connectt errort close( t addresst hostt portt msgt sockt rest aft socktypet protot unused_canonnamet sa( ( sC /usr/lib/python2.7/dist-packages/mercurial/httpclient/socketutil.pyt create_connection7 s(
t
FakeSocketc B s e Z d Z d d d „ Z RS( s! Socket wrapper that supports SSL.i i c C s‚ | d k r"