summaryrefslogtreecommitdiff
path: root/src/leap
diff options
context:
space:
mode:
Diffstat (limited to 'src/leap')
-rw-r--r--src/leap/base/auth.py6
-rw-r--r--src/leap/base/specs.py16
-rw-r--r--src/leap/baseapp/eip.py2
-rw-r--r--src/leap/baseapp/network.py8
-rw-r--r--src/leap/eip/checks.py8
5 files changed, 28 insertions, 12 deletions
diff --git a/src/leap/base/auth.py b/src/leap/base/auth.py
index 73856bb0..56b7cf96 100644
--- a/src/leap/base/auth.py
+++ b/src/leap/base/auth.py
@@ -43,7 +43,7 @@ class LeapSRPRegister(object):
def __init__(self,
schema="https",
provider=None,
- port=None,
+ #port=None,
verify=True,
register_path="1/users.json",
method="POST",
@@ -57,8 +57,8 @@ class LeapSRPRegister(object):
self.schema = schema
# XXX FIXME
- self.provider = provider
- self.port = port
+ #self.provider = provider
+ #self.port = port
# XXX splitting server,port
# deprecate port call.
domain, port = get_https_domain_and_port(provider)
diff --git a/src/leap/base/specs.py b/src/leap/base/specs.py
index b4bb8dcf..962aa07d 100644
--- a/src/leap/base/specs.py
+++ b/src/leap/base/specs.py
@@ -2,22 +2,26 @@ leap_provider_spec = {
'description': 'provider definition',
'type': 'object',
'properties': {
- 'serial': {
- 'type': int,
- 'default': 1,
- 'required': True,
- },
+ #'serial': {
+ #'type': int,
+ #'default': 1,
+ #'required': True,
+ #},
'version': {
'type': unicode,
'default': '0.1.0'
#'required': True
},
+ "default_language": {
+ 'type': unicode,
+ 'default': 'en'
+ },
'domain': {
'type': unicode, # XXX define uri type
'default': 'testprovider.example.org'
#'required': True,
},
- 'display_name': {
+ 'name': {
'type': dict, # XXX multilingual object?
'default': {u'en': u'Test Provider'}
#'required': True
diff --git a/src/leap/baseapp/eip.py b/src/leap/baseapp/eip.py
index 54acbc0e..0d7506b3 100644
--- a/src/leap/baseapp/eip.py
+++ b/src/leap/baseapp/eip.py
@@ -203,6 +203,8 @@ class EIPConductorAppMixin(object):
# we could bring Timer Init to this Mixin
# or to its own Mixin.
self.timer.start(constants.TIMER_MILLISECONDS)
+ # XXX EMIT SIGNAL INSTEAD (when first run,
+ # network checker does not exist...)
self.network_checker.start()
return
diff --git a/src/leap/baseapp/network.py b/src/leap/baseapp/network.py
index 3e57490d..7363cfaa 100644
--- a/src/leap/baseapp/network.py
+++ b/src/leap/baseapp/network.py
@@ -18,13 +18,17 @@ class NetworkCheckerAppMixin(object):
def __init__(self, *args, **kwargs):
provider = kwargs.pop('provider', None)
+ if provider:
+ self.init_network_checker(provider)
+
+ def init_network_checker(self, provider):
self.network_checker = NetworkCheckerThread(
error_cb=self.networkError.emit,
debug=self.debugmode,
provider=provider)
- # XXX move run_checks to slot -- this definitely
- # cannot start on init!!!
+ @QtCore.pyqtSlot(object)
+ def runNetworkChecks(self):
self.network_checker.run_checks()
@QtCore.pyqtSlot(object)
diff --git a/src/leap/eip/checks.py b/src/leap/eip/checks.py
index 8d615b94..92964a9d 100644
--- a/src/leap/eip/checks.py
+++ b/src/leap/eip/checks.py
@@ -242,7 +242,9 @@ class ProviderCertChecker(object):
raise
try:
pemfile_content = req.content
- self.is_valid_pemfile(pemfile_content)
+ valid = self.is_valid_pemfile(pemfile_content)
+ if not valid:
+ return False
cert_path = self._get_client_cert_path()
self.write_cert(pemfile_content, to=cert_path)
except:
@@ -303,6 +305,10 @@ class ProviderCertChecker(object):
if len(certparts) > 1:
cert_s = sep + certparts[1]
ssl.PEM_cert_to_DER_cert(cert_s)
+ except ValueError:
+ # valid_pemfile raises a value error if not BEGIN_CERTIFICATE in
+ # there...
+ return False
except:
# XXX raise proper exception
raise