mirror of
https://github.com/Ultimaker/Cura.git
synced 2025-07-07 06:57:28 -06:00
Use certifi for firmware update checker
CURA-6698
This commit is contained in:
parent
6b93c97a5e
commit
a2dcbc3be7
1 changed files with 8 additions and 1 deletions
|
@ -10,6 +10,9 @@ from UM.Version import Version
|
||||||
import urllib.request
|
import urllib.request
|
||||||
from urllib.error import URLError
|
from urllib.error import URLError
|
||||||
from typing import Dict, Optional
|
from typing import Dict, Optional
|
||||||
|
import ssl
|
||||||
|
|
||||||
|
import certifi
|
||||||
|
|
||||||
from .FirmwareUpdateCheckerLookup import FirmwareUpdateCheckerLookup, getSettingsKeyForMachine
|
from .FirmwareUpdateCheckerLookup import FirmwareUpdateCheckerLookup, getSettingsKeyForMachine
|
||||||
from .FirmwareUpdateCheckerMessage import FirmwareUpdateCheckerMessage
|
from .FirmwareUpdateCheckerMessage import FirmwareUpdateCheckerMessage
|
||||||
|
@ -39,8 +42,12 @@ class FirmwareUpdateCheckerJob(Job):
|
||||||
result = self.STRING_ZERO_VERSION
|
result = self.STRING_ZERO_VERSION
|
||||||
|
|
||||||
try:
|
try:
|
||||||
|
# CURA-6698 Create an SSL context and use certifi CA certificates for verification.
|
||||||
|
context = ssl.SSLContext(protocol = ssl.PROTOCOL_TLSv1_2)
|
||||||
|
context.load_verify_locations(cafile = certifi.where())
|
||||||
|
|
||||||
request = urllib.request.Request(url, headers = self._headers)
|
request = urllib.request.Request(url, headers = self._headers)
|
||||||
response = urllib.request.urlopen(request)
|
response = urllib.request.urlopen(request, context = context)
|
||||||
result = response.read().decode("utf-8")
|
result = response.read().decode("utf-8")
|
||||||
except URLError:
|
except URLError:
|
||||||
Logger.log("w", "Could not reach '{0}', if this URL is old, consider removal.".format(url))
|
Logger.log("w", "Could not reach '{0}', if this URL is old, consider removal.".format(url))
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue