summaryrefslogtreecommitdiff
path: root/src/leap/bitmask/backend
diff options
context:
space:
mode:
Diffstat (limited to 'src/leap/bitmask/backend')
-rw-r--r--src/leap/bitmask/backend/api.py4
-rw-r--r--src/leap/bitmask/backend/backend_proxy.py3
-rw-r--r--src/leap/bitmask/backend/components.py7
-rw-r--r--src/leap/bitmask/backend/leapbackend.py6
-rw-r--r--src/leap/bitmask/backend/leapsignaler.py1
5 files changed, 20 insertions, 1 deletions
diff --git a/src/leap/bitmask/backend/api.py b/src/leap/bitmask/backend/api.py
index 4f52e470..3f6c0ad1 100644
--- a/src/leap/bitmask/backend/api.py
+++ b/src/leap/bitmask/backend/api.py
@@ -20,6 +20,8 @@ Backend available API and SIGNALS definition.
STOP_REQUEST = "stop"
PING_REQUEST = "PING"
+# XXX this needs documentation. What is it used for?
+
API = (
STOP_REQUEST, # this method needs to be defined in order to support the
# backend stop action
@@ -56,6 +58,7 @@ API = (
"soledad_close",
"soledad_load_offline",
"tear_fw_down",
+ "bitmask_root_vpn_down",
"user_cancel_login",
"user_change_password",
"user_get_logged_in_status",
@@ -97,6 +100,7 @@ SIGNALS = (
"eip_status_changed",
"eip_stopped",
"eip_tear_fw_down",
+ "eip_bitmask_root_vpn_down",
"eip_uninitialized_provider",
"eip_vpn_launcher_exception",
"imap_stopped",
diff --git a/src/leap/bitmask/backend/backend_proxy.py b/src/leap/bitmask/backend/backend_proxy.py
index dc30d2cb..e2611251 100644
--- a/src/leap/bitmask/backend/backend_proxy.py
+++ b/src/leap/bitmask/backend/backend_proxy.py
@@ -18,6 +18,8 @@
The BackendProxy handles calls from the GUI and forwards (through ZMQ)
to the backend.
"""
+# XXX should document the relationship to the API here.
+
import functools
import Queue
import threading
@@ -37,6 +39,7 @@ class BackendProxy(object):
The BackendProxy handles calls from the GUI and forwards (through ZMQ)
to the backend.
"""
+
PORT = '5556'
SERVER = "tcp://localhost:%s" % PORT
diff --git a/src/leap/bitmask/backend/components.py b/src/leap/bitmask/backend/components.py
index b372db89..f721086b 100644
--- a/src/leap/bitmask/backend/components.py
+++ b/src/leap/bitmask/backend/components.py
@@ -69,7 +69,6 @@ class ILEAPComponent(zope.interface.Interface):
"""
Interface that every component for the backend should comply to
"""
-
key = zope.interface.Attribute("Key id for this component")
@@ -552,6 +551,12 @@ class EIP(object):
"""
self._vpn.tear_down_firewall()
+ def bitmask_root_vpn_down(self):
+ """
+ Bring openvpn down, using bitmask-root helper.
+ """
+ self._vpn.bitmask_root_vpn_down()
+
def get_gateways_list(self, domain):
"""
Signal a list of gateways for the given provider.
diff --git a/src/leap/bitmask/backend/leapbackend.py b/src/leap/bitmask/backend/leapbackend.py
index 6b0328ca..3b023563 100644
--- a/src/leap/bitmask/backend/leapbackend.py
+++ b/src/leap/bitmask/backend/leapbackend.py
@@ -317,6 +317,12 @@ class LeapBackend(Backend):
"""
self._eip.tear_fw_down()
+ def bitmask_root_vpn_down(self):
+ """
+ Signal the need to bring vpn down.
+ """
+ self._eip.bitmask_root_vpn_down()
+
def user_login(self, provider, username, password):
"""
Execute the whole authentication process for a user
diff --git a/src/leap/bitmask/backend/leapsignaler.py b/src/leap/bitmask/backend/leapsignaler.py
index a36e6fdc..c0fdffdc 100644
--- a/src/leap/bitmask/backend/leapsignaler.py
+++ b/src/leap/bitmask/backend/leapsignaler.py
@@ -58,6 +58,7 @@ class LeapSignaler(SignalerQt):
eip_status_changed = QtCore.Signal(dict)
eip_stopped = QtCore.Signal()
eip_tear_fw_down = QtCore.Signal(object)
+ eip_bitmask_root_vpn_down = QtCore.Signal(object)
eip_uninitialized_provider = QtCore.Signal()
eip_vpn_launcher_exception = QtCore.Signal()