summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKali Kaneko <kali@leap.se>2017-08-14 20:43:56 -0400
committerKali Kaneko <kali@leap.se>2017-08-15 16:51:47 -0400
commit8ebd7753c8e91bd1db032220fd0c5295947d64f0 (patch)
tree661d65996ed6dcec7487a72ef6c0d0ac769024d0
parentabf688c7d643b89a1001a9f7c7ff24a4a3dab42c (diff)
[bug] fix attribute error when vpn is not started
-rw-r--r--src/leap/bitmask/vpn/_control.py6
-rw-r--r--src/leap/bitmask/vpn/service.py4
2 files changed, 5 insertions, 5 deletions
diff --git a/src/leap/bitmask/vpn/_control.py b/src/leap/bitmask/vpn/_control.py
index ac683a2..45d2f2f 100644
--- a/src/leap/bitmask/vpn/_control.py
+++ b/src/leap/bitmask/vpn/_control.py
@@ -119,11 +119,13 @@ class VPNControl(object):
# We assume that the only valid stops are initiated
# by an user action, not hard restarts
self._user_stopped = not restart
- self._vpnproc.restarting = restart
+ if self._vpnproc is not None:
+ self._vpnproc.restarting = restart
self._stop_pollers()
try:
- self._vpnproc.preDown()
+ if self._vpnproc is not None:
+ self._vpnproc.preDown()
except Exception as e:
self.log.error('Error on vpn pre-down {0!r}'.format(e))
raise
diff --git a/src/leap/bitmask/vpn/service.py b/src/leap/bitmask/vpn/service.py
index 7cd595a..704bbc7 100644
--- a/src/leap/bitmask/vpn/service.py
+++ b/src/leap/bitmask/vpn/service.py
@@ -124,9 +124,7 @@ class VPNService(HookableService):
self.log.error("Firewall: error stopping")
if not self._tunnel:
- # XXX this avoids to shutdown anything that was in process.
- # or self._tunnel.status['status'] is not 'on':
- raise Exception('VPN was not running')
+ return {'result': 'VPN was not running'}
vpn_ok = self._tunnel.stop()
if not vpn_ok: