2017-01-27 14:37:01 +00:00
|
|
|
import sys
|
|
|
|
|
2014-03-10 05:18:05 +00:00
|
|
|
try:
|
2017-01-27 14:37:01 +00:00
|
|
|
# Our match_hostname function is the same as 3.5's, so we only want to
|
|
|
|
# import the match_hostname function if it's at least that good.
|
|
|
|
if sys.version_info < (3, 5):
|
|
|
|
raise ImportError("Fallback to vendored code")
|
|
|
|
|
2014-03-10 05:18:05 +00:00
|
|
|
from ssl import CertificateError, match_hostname
|
|
|
|
except ImportError:
|
|
|
|
try:
|
|
|
|
# Backport of the function from a pypi module
|
|
|
|
from backports.ssl_match_hostname import CertificateError, match_hostname
|
|
|
|
except ImportError:
|
|
|
|
# Our vendored copy
|
2014-11-20 02:00:00 +00:00
|
|
|
from ._implementation import CertificateError, match_hostname
|
2014-03-10 05:18:05 +00:00
|
|
|
|
|
|
|
# Not needed, but documenting what we provide.
|
|
|
|
__all__ = ('CertificateError', 'match_hostname')
|