ó ¿öYc@@sdZddlmZddlZddlZddlZddlmZddlm Z m Z ddl m Z dejdedd„ZdS(s raven.utils.http ~~~~~~~~~~~~~~~~ :copyright: (c) 2010-2012 by the Sentry Team, see AUTHORS for more details. :license: BSD, see LICENSE for more details. i(tabsolute_importN(tdefaults(turllib2thttplib(tmatch_hostnamec @sþdtjf‡‡fd†ƒY‰dtjf‡fd†ƒY}|rS|g}n9ytjdtjƒƒg}Wntk r‹g}nXtj|Œ}tj dkrët j ƒ} t j |ƒz|j ||ƒSWdt j | ƒXn|j |||ƒS( NtValidHTTPSConnectionc@s,eZejZd„Z‡‡fd†ZRS(c_@stjj|||ŽdS(N(RtHTTPConnectiont__init__(tselftargstkwargs((sA/opt/alt/python27/lib/python2.7/site-packages/raven/utils/http.pyRsc@sœtjd|j|jfd|jƒ}|jrF||_|jƒntj |dˆdtj ƒ|_ˆdk r˜t |jj ƒ|jp‘|jƒndS(Ntaddressttimeouttca_certst cert_reqs(tsockettcreate_connectionthosttportR t _tunnel_hosttsockt_tunneltsslt wrap_sockett CERT_REQUIREDtNoneRt getpeercerttassert_hostname(RR(RR (sA/opt/alt/python27/lib/python2.7/site-packages/raven/utils/http.pytconnects      (t__name__t __module__Rt HTTPS_PORTt default_portRR((RR (sA/opt/alt/python27/lib/python2.7/site-packages/raven/utils/http.pyRs  tValidHTTPSHandlerc@seZ‡fd†ZRS(c@s|jˆ|ƒS(N(tdo_open(Rtreq(R(sA/opt/alt/python27/lib/python2.7/site-packages/raven/utils/http.pyt https_open-s(RRR$((R(sA/opt/alt/python27/lib/python2.7/site-packages/raven/utils/http.pyR!,stcontextii(ii(RRRt HTTPSHandlerRt_create_unverified_contexttAttributeErrort build_openertsyst version_infoRtgetdefaulttimeouttsetdefaulttimeouttopen( turltdataR R t verify_sslRR!thandlerstopenertdefault_timeout((RRR sA/opt/alt/python27/lib/python2.7/site-packages/raven/utils/http.pyturlopens""      (t__doc__t __future__RRRR*t raven.confRtraven.utils.compatRRtraven.utils.ssl_match_hostnameRRtTIMEOUTtFalseR5(((sA/opt/alt/python27/lib/python2.7/site-packages/raven/utils/http.pyts