Dont check Linux CA locations on macOS

This commit is contained in:
Kovid Goyal
2021-08-16 22:23:24 +05:30
parent d8f09d377f
commit a2e25331a5

View File

@@ -128,18 +128,20 @@ def setup_openssl_environment() -> None:
# their NIH SSL library instead of OpenSSL. # their NIH SSL library instead of OpenSSL.
if 'SSL_CERT_FILE' in os.environ or 'SSL_CERT_DIR' in os.environ: if 'SSL_CERT_FILE' in os.environ or 'SSL_CERT_DIR' in os.environ:
return return
candidates = [ d = os.path.dirname
'/etc/ssl/certs/ca-certificates.crt', # Debian/Ubuntu/Arch/Gentoo etc. candidates: tuple = ()
"/etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem" # RHEL 7 if 'darwin' in sys.platform.lower():
'/etc/pki/tls/certs/ca-bundle.crt', # Fedora/RHEL 6 ext_dir = getattr(sys, 'kitty_extensions_dir', '')
'/etc/ssl/ca-bundle.pem', # OpenSUSE if ext_dir:
"/etc/pki/tls/cacert.pem", # OpenELEC candidates = (os.path.join(d(d(d(ext_dir))), 'cacert.pem'),)
] else:
ext_dir = getattr(sys, 'kitty_extensions_dir', '') candidates = (
if ext_dir: '/etc/ssl/certs/ca-certificates.crt', # Debian/Ubuntu/Arch/Gentoo etc.
d = os.path.dirname "/etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem" # RHEL 7
if 'darwin' in sys.platform.lower(): '/etc/pki/tls/certs/ca-bundle.crt', # Fedora/RHEL 6
candidates.insert(0, os.path.join(d(d(d(ext_dir))), 'cacert.pem')) '/etc/ssl/ca-bundle.pem', # OpenSUSE
"/etc/pki/tls/cacert.pem", # OpenELEC
)
for q in candidates: for q in candidates:
if os.access(q, os.R_OK): if os.access(q, os.R_OK):
os.environ['SSL_CERT_FILE'] = q os.environ['SSL_CERT_FILE'] = q