From 820709938e4313e04bab160115cc215769c3a1fb Mon Sep 17 00:00:00 2001 From: "Kali Kaneko (leap communications)" Date: Thu, 1 Jun 2017 03:06:51 +0200 Subject: [refactor] improve error reporting when openvpn not found --- src/leap/bitmask/vpn/service.py | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) (limited to 'src/leap/bitmask/vpn/service.py') diff --git a/src/leap/bitmask/vpn/service.py b/src/leap/bitmask/vpn/service.py index 874c30d3..5ab1e97e 100644 --- a/src/leap/bitmask/vpn/service.py +++ b/src/leap/bitmask/vpn/service.py @@ -78,16 +78,24 @@ class VPNService(HookableService): exc.expected = True raise exc yield self._setup(domain) + try: - self._vpn.start() + started = self._vpn.start() + + # XXX capture it inside start method + # here I'd like to get (status, message) except NoPolkitAuthAgentAvailable as e: e.expected = True raise e + # -------------------------------------- - self._started = True + self._started = started self._domain = domain self._write_last(domain) - defer.returnValue({'result': 'started'}) + if started: + defer.returnValue({'result': 'started'}) + else: + raise Exception('Could not start VPN, check logs') def stop_vpn(self): # TODO ----------------------------- -- cgit v1.2.3