diff options
author | Ruben Pollan <meskio@sindominio.net> | 2018-03-27 13:31:12 +0200 |
---|---|---|
committer | Kali Kaneko <kali@leap.se> | 2018-03-28 23:51:26 +0200 |
commit | 60903c2515391384b67f9d3a7c6d5c810db0e946 (patch) | |
tree | 23b0f70bbb6967f22d3bb2030a51dec1044edff8 | |
parent | dcbbda4dbd442340cbc46e2f1a476cb21e12ca0f (diff) |
[refactor] move autostart code into core
All the logic to autostart bitmask should not be vpn dependent.
-rw-r--r-- | src/leap/bitmask/core/autostart.py (renamed from src/leap/bitmask/vpn/autostart.py) | 0 | ||||
-rw-r--r-- | src/leap/bitmask/core/dispatcher.py | 3 | ||||
-rw-r--r-- | src/leap/bitmask/vpn/service.py | 16 |
3 files changed, 6 insertions, 13 deletions
diff --git a/src/leap/bitmask/vpn/autostart.py b/src/leap/bitmask/core/autostart.py index 1c361d82..1c361d82 100644 --- a/src/leap/bitmask/vpn/autostart.py +++ b/src/leap/bitmask/core/autostart.py diff --git a/src/leap/bitmask/core/dispatcher.py b/src/leap/bitmask/core/dispatcher.py index 20c0615b..a4b8ce39 100644 --- a/src/leap/bitmask/core/dispatcher.py +++ b/src/leap/bitmask/core/dispatcher.py @@ -33,6 +33,7 @@ from leap.common.events import unregister_async as unregister from leap.common.events import catalog from .api import APICommand, register_method +from .autostart import autostart_app log = Logger() @@ -196,11 +197,13 @@ class VPNCmd(SubCommand): except IndexError: provider = None d = vpn.start_vpn(provider) + autostart_app('on') return d @register_method('dict') def do_STOP(self, vpn, *parts): d = vpn.stop_vpn() + autostart_app('off') return d @register_method('dict') diff --git a/src/leap/bitmask/vpn/service.py b/src/leap/bitmask/vpn/service.py index 95751ca0..4ce573ba 100644 --- a/src/leap/bitmask/vpn/service.py +++ b/src/leap/bitmask/vpn/service.py @@ -40,7 +40,6 @@ from leap.bitmask.vpn._checks import ( from leap.bitmask.system import IS_LINUX from leap.bitmask.vpn import privilege, helpers -from leap.bitmask.vpn import autostart from leap.common.config import get_path_prefix from leap.common.files import check_and_fix_urw_only from leap.common.events import catalog, emit_async @@ -118,7 +117,6 @@ class VPNService(HookableService): def start_vpn(self, domain=None): self.log.debug('Starting VPN') self._cfg.set('autostart', True) - autostart.autostart_app('on') if self.do_status()['status'] == 'on': exc = Exception('VPN already started') @@ -162,11 +160,11 @@ class VPNService(HookableService): def stop_vpn(self, shutdown=False): if shutdown: if self._tunnel and self._tunnel.status.get('status') == 'on': - self._set_autostart('on') + self._cfg.set('autostart', True) else: - self._set_autostart('off') + self._cfg.set('autostart', False) else: - self._set_autostart('off') + self._cfg.set('autostart', False) if self._firewall.is_up(): fw_ok = self._firewall.stop() @@ -184,14 +182,6 @@ class VPNService(HookableService): self.watchdog.stop() return {'result': 'vpn stopped'} - def _set_autostart(self, status): - if status.lower() == 'on': - self._cfg.set('autostart', True) - autostart.autostart_app('on') - elif status.lower() == 'off': - self._cfg.set('autostart', False) - autostart.autostart_app('off') - def push_status(self): try: statusdict = self.do_status() |