summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimon Fondrie-Teitler <simonft@riseup.net>2017-05-01 22:03:42 -0400
committerKali Kaneko (leap communications) <kali@leap.se>2017-05-04 21:25:51 +0200
commit73fe34135dcfee98ecc1ee2287ea063028d550f6 (patch)
treef89b0dc10076c842318dc5a1542c0d8142e7918d
parent004f694569a519b160677097a691c609268dbdd0 (diff)
[bug] correctly handle authenticate's autoconf parameter
This fixes two bugs with handling the autoconf parameter: - It looks for "True" instead of "true" in the dispatching code to account for json.dumps() converting true into a boolean and str() returning the python-style capitalized version "True". - It moves the initial definitions of offirst_bootstrap, ongoing_bootstrap, and stuck_bootstrap into the class instantiation method so they don't get shared between instances of the class. Previously, this caused one instance being bootstrapped to causes other instances to think they were also actively being bootstrapped. Resolves #8843
-rw-r--r--src/leap/bitmask/bonafide/config.py8
-rw-r--r--src/leap/bitmask/core/dispatcher.py4
2 files changed, 6 insertions, 6 deletions
diff --git a/src/leap/bitmask/bonafide/config.py b/src/leap/bitmask/bonafide/config.py
index b3c35ba1..82442c86 100644
--- a/src/leap/bitmask/bonafide/config.py
+++ b/src/leap/bitmask/bonafide/config.py
@@ -163,10 +163,6 @@ class Provider(object):
'openvpn': ['eip'],
'mx': ['soledad', 'smtp']}
- first_bootstrap = defaultdict(None)
- ongoing_bootstrap = defaultdict(None)
- stuck_bootstrap = defaultdict(None)
-
log = Logger()
def __init__(self, domain, autoconf=False, basedir=None,
@@ -179,6 +175,10 @@ class Provider(object):
self._disco = Discovery('https://%s' % domain)
self._provider_config = None
+ self.first_bootstrap = defaultdict(None)
+ self.ongoing_bootstrap = defaultdict(None)
+ self.stuck_bootstrap = defaultdict(None)
+
is_configured = self.is_configured()
if not is_configured:
check_certificate = False
diff --git a/src/leap/bitmask/core/dispatcher.py b/src/leap/bitmask/core/dispatcher.py
index 187ebfd5..41b091f7 100644
--- a/src/leap/bitmask/core/dispatcher.py
+++ b/src/leap/bitmask/core/dispatcher.py
@@ -119,7 +119,7 @@ class UserCmd(SubCommand):
len(parts[2:])))
autoconf = False
if len(parts) > 4:
- if parts[4] == 'true':
+ if parts[4] == 'True':
autoconf = True
# FIXME We still SHOULD pass a local token
@@ -148,7 +148,7 @@ class UserCmd(SubCommand):
invite = None
autoconf = False
if len(parts) > 5:
- if parts[5] == 'true':
+ if parts[5] == 'True':
autoconf = True
return bonafide.do_signup(user, password, invite, autoconf)