Repository URL to install this package:
|
Version:
3.3.35 ▾
|
ó
wEYc @ s d d l Z d d l Z d d l Z d d l Z d d l m Z m Z m Z d d l Z d d l m Z m
Z
y d d l Z Wn e k
r d Z n Xd d d d d g Z d j j Z y e j j Z e j Z Wn e k
rõ e Z Z n Xe d k oe e e f k Z y d d
l m Z m Z WnU e k
r
y$ d d l m Z d d l m Z Wqe k
rd Z d Z qXn Xe s¥d
e f d YZ n e sÃd d Z d Z n d e f d YZ d e f d YZ d d Z d a d Z! d Z" d S( iÿÿÿÿN( t urllibt http_clientt map( t ResolutionErrort ExtractionErrort VerifyingHTTPSHandlert find_ca_bundlet is_availablet
cert_pathst
opener_forsë
/etc/pki/tls/certs/ca-bundle.crt
/etc/ssl/certs/ca-certificates.crt
/usr/share/ssl/certs/ca-bundle.crt
/usr/local/share/certs/ca-root.crt
/etc/ssl/cert.pem
/System/Library/OpenSSL/certs/cert.pem
/usr/local/share/certs/ca-root-nss.crt
( t CertificateErrort match_hostname( R
( R R
c B s e Z RS( ( t __name__t
__module__( ( ( sK /home/tvault/.virtenv/lib/python2.7/site-packages/setuptools/ssl_support.pyR
4 s i c
C sR g } | s t S| j d } | d } | d } | j d } | | k rg t d t | n | s | j | j k S| d k r | j d nY | j d s½ | j d rÖ | j t j | n" | j t j | j
d d x$ | D] } | j t j | qÿ Wt j d
d j | d t j
} | j | S(
sp Matching according to RFC 6125, section 6.4.3
http://tools.ietf.org/html/rfc6125#section-6.4.3
t .i i t *s, too many wildcards in certificate DNS name: s [^.]+s xn--s \*s [^.]*s \As \.s \Z( t Falset splitt countR
t reprt lowert appendt
startswitht ret escapet replacet compilet joint
IGNORECASEt match(
t dnt hostnamet
max_wildcardst patst partst leftmostt remaindert wildcardst fragt pat( ( sK /home/tvault/.virtenv/lib/python2.7/site-packages/setuptools/ssl_support.pyt _dnsname_match8 s*
"
&c C s[ | s t d n g } | j d d
} xC | D]; \ } } | d k r4 t | | r_ d S| j | q4 q4 W| sß xc | j d d D]L } xC | D]; \ } } | d k r t | | rÄ d S| j | q q Wq Wn t | d k rt d | d j t t | f n; t | d k rKt d
| | d f n t d d S( s= Verify that *cert* (in decoded format as returned by
SSLSocket.getpeercert()) matches the *hostname*. RFC 2818 and RFC 6125
rules are followed, but IP addresses are not accepted for *hostname*.
CertificateError is raised on failure. On success, the function
returns nothing.
s empty or no certificatet subjectAltNamet DNSNt subjectt
commonNamei s&