Merge branch 'SSL_test'
This commit is contained in:
@@ -9,7 +9,8 @@ from zipfile import ZipFile
|
|||||||
import aiohttp
|
import aiohttp
|
||||||
from PyQt5.QtCore import QThread, pyqtSignal
|
from PyQt5.QtCore import QThread, pyqtSignal
|
||||||
from constants import Constants, Database, ChecksumWhat
|
from constants import Constants, Database, ChecksumWhat
|
||||||
from utilities import checksum_ok, get_pool_manager
|
from utilities import checksum_ok, get_pool_manager, get_cacert_file
|
||||||
|
import ssl
|
||||||
|
|
||||||
# Needed for pyinstaller compilation.
|
# Needed for pyinstaller compilation.
|
||||||
import encodings.idna
|
import encodings.idna
|
||||||
@@ -156,7 +157,11 @@ class _AsyncDownloader:
|
|||||||
|
|
||||||
async def _download_resource(self, session, link):
|
async def _download_resource(self, session, link):
|
||||||
"""Return the content of 'link' as bytes."""
|
"""Return the content of 'link' as bytes."""
|
||||||
resp = await session.get(link)
|
ssl_context = ssl.create_default_context(
|
||||||
|
purpose=ssl.Purpose.SERVER_AUTH,
|
||||||
|
cafile=get_cacert_file()
|
||||||
|
)
|
||||||
|
resp = await session.get(link, ssl=ssl_context)
|
||||||
return await resp.read()
|
return await resp.read()
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -54,13 +54,18 @@ def is_mac_os():
|
|||||||
return sys.platform == 'darwin'
|
return sys.platform == 'darwin'
|
||||||
|
|
||||||
|
|
||||||
def get_pool_manager():
|
def get_cacert_file():
|
||||||
"""Return a urllib3.PoolManager object."""
|
"""Return the path to the cacert.pem file."""
|
||||||
if hasattr(sys, "_MEIPASS"):
|
if hasattr(sys, "_MEIPASS"):
|
||||||
ca_certs = os.path.join(sys._MEIPASS, 'cacert.pem')
|
ca_certs = os.path.join(sys._MEIPASS, 'cacert.pem')
|
||||||
else:
|
else:
|
||||||
ca_certs = 'cacert.pem'
|
ca_certs = 'cacert.pem'
|
||||||
return urllib3.PoolManager(ca_certs=ca_certs)
|
return ca_certs
|
||||||
|
|
||||||
|
|
||||||
|
def get_pool_manager():
|
||||||
|
"""Return a urllib3.PoolManager object."""
|
||||||
|
return urllib3.PoolManager(ca_certs=get_cacert_file())
|
||||||
|
|
||||||
|
|
||||||
def checksum_ok(data, what):
|
def checksum_ok(data, what):
|
||||||
|
|||||||
Reference in New Issue
Block a user