From: Ciro Scognamiglio Date: Tue, 10 Nov 2015 13:29:41 +0000 (+0100) Subject: added check for ssl _create_unverified_context when talking to API X-Git-Tag: bootmanager-5.3-2~1 X-Git-Url: http://git.onelab.eu/?p=bootmanager.git;a=commitdiff_plain;h=40778dc41a026857000551f5cc7a8e229e32d384 added check for ssl _create_unverified_context when talking to API --- diff --git a/source/RunlevelAgent.py b/source/RunlevelAgent.py index c1843bd..8dd3474 100755 --- a/source/RunlevelAgent.py +++ b/source/RunlevelAgent.py @@ -16,6 +16,7 @@ import traceback import sys import os import string +import ssl CONFIG_FILE = "/tmp/source/configuration" SESSION_FILE = "/etc/planetlab/session" @@ -74,7 +75,13 @@ class PLC: def __init__(self, auth, url): self.auth = auth self.url = url - self.api = xmlrpclib.Server(self.url, verbose=False, allow_none=True) + # Using a self signed certificate + # https://www.python.org/dev/peps/pep-0476/ + if hasattr(ssl, '_create_unverified_context'): + self.api = xmlrpclib.Server(self.url, verbose=False, allow_none=True, + context=ssl._create_unverified_context()) + else : + self.api = xmlrpclib.Server(self.url, verbose=False, allow_none=True) def __getattr__(self, name): method = getattr(self.api, name)