calcurse-caldav: Add a workaround for Python <3.4

Python versions prior to 3.4 do not check certificates by default and
thus do not support ssl._create_unverified_context(). Add a workaround.

Signed-off-by: Lukas Fleischer <lfleischer@calcurse.org>
This commit is contained in:
Lukas Fleischer 2016-01-23 08:22:23 +01:00
parent d516a8ff87
commit dcdc792178

View File

@ -385,12 +385,19 @@ open(lockfn, 'w')
try: try:
# Connect to the server via HTTPs. # Connect to the server via HTTPs.
if insecure_ssl: if insecure_ssl:
try:
context = ssl._create_unverified_context() context = ssl._create_unverified_context()
conn = http.client.HTTPSConnection(hostname, context=context)
except AttributeError:
# Python versions prior to 3.4 do not support
# ssl._create_unverified_context(). However, these versions do not
# seem to verify certificates by default so we can simply fall back
# to http.client.HTTPSConnection().
conn = http.client.HTTPSConnection(hostname)
else: else:
context = ssl._create_default_https_context() conn = http.client.HTTPSConnection(hostname)
if verbose: if verbose:
print('Connecting to ' + hostname + '...') print('Connecting to ' + hostname + '...')
conn = http.client.HTTPSConnection(hostname, context=context)
if init: if init:
# In initialization mode, start with an empty synchronization database. # In initialization mode, start with an empty synchronization database.