summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorKali Kaneko <kali@leap.se>2014-11-24 17:16:44 +0100
committerKali Kaneko <kali@leap.se>2014-11-24 17:16:44 +0100
commit0473359c06362889d8e58947343aa3cac67a5d82 (patch)
treebf8f37d15cbe84267d2bba53005f7d9e00a96c90 /src
parent90021cc3cfb55e30ad3a20a12257fdf386e3653f (diff)
parent704e6bd60c1979a6a997bbe13eac4d30e3188887 (diff)
Merge tag '0.7.0rc5' into debian/experimental
Tag leap.bitmask version 0.7.0rc5
Diffstat (limited to 'src')
-rw-r--r--src/leap/bitmask/gui/mainwindow.py52
-rw-r--r--src/leap/bitmask/services/eip/eipconfig.py9
-rw-r--r--src/leap/bitmask/util/privilege_policies.py1
3 files changed, 35 insertions, 27 deletions
diff --git a/src/leap/bitmask/gui/mainwindow.py b/src/leap/bitmask/gui/mainwindow.py
index f2693eec..9df1804f 100644
--- a/src/leap/bitmask/gui/mainwindow.py
+++ b/src/leap/bitmask/gui/mainwindow.py
@@ -34,7 +34,6 @@ from leap.bitmask import __version_hash__ as VERSION_HASH
from leap.bitmask.backend.leapbackend import ERROR_KEY, PASSED_KEY
from leap.bitmask.config import flags
-from leap.bitmask.config.leapsettings import LeapSettings
from leap.bitmask.gui.advanced_key_management import AdvancedKeyManagement
from leap.bitmask.gui.eip_status import EIPStatusWidget
@@ -53,9 +52,6 @@ from leap.bitmask.platform_init import locks
from leap.bitmask.platform_init.initializers import init_platform
from leap.bitmask.platform_init.initializers import init_signals
-from leap.bitmask.backend.backend_proxy import BackendProxy
-from leap.bitmask.backend.leapsignaler import LeapSignaler
-
from leap.bitmask.services.eip import conductor as eip_conductor
from leap.bitmask.services.mail import conductor as mail_conductor
@@ -144,7 +140,8 @@ class MainWindow(QtGui.QMainWindow):
# Qt Signal Connections #####################################
# TODO separate logic from ui signals.
- self.app.service_selection_changed.connect(self._update_eip_enabled_status)
+ self.app.service_selection_changed.connect(
+ self._update_eip_enabled_status)
self._login_widget.login.connect(self._login)
self._login_widget.cancel_login.connect(self._cancel_login)
self._login_widget.logout.connect(self._logout)
@@ -210,7 +207,11 @@ class MainWindow(QtGui.QMainWindow):
self.ui.action_quit.triggered.connect(self.quit)
self.ui.action_wizard.triggered.connect(self._launch_wizard)
self.ui.action_show_logs.triggered.connect(self._show_logger_window)
- self.ui.action_help.triggered.connect(self._help)
+
+ # XXX hide the help menu since it only shows email information and
+ # right now we don't have stable mail and just confuses users.
+ self.ui.action_help.setVisible(False)
+ # self.ui.action_help.triggered.connect(self._help)
self.ui.action_create_new_account.triggered.connect(
self._on_provider_changed)
@@ -600,10 +601,12 @@ class MainWindow(QtGui.QMainWindow):
self._backend_cannot_start_eip()
return
- if not EIP_SERVICE in self.app.settings.get_enabled_services(domain):
+ if EIP_SERVICE not in self.app.settings.get_enabled_services(domain):
self._eip_conductor.terminate()
+
def hide():
- self.app.backend.eip_can_start(domain=domain)
+ self.app.backend.eip_can_start(domain=domain)
+
QtDelayedCall(100, hide)
# ^^ VERY VERY Hacky, but with the simple state machine,
# there is no way to signal 'disconnect and then disable'
@@ -615,7 +618,6 @@ class MainWindow(QtGui.QMainWindow):
# check if EIP can start (will trigger widget update)
self.app.backend.eip_can_start(domain=domain)
-
def _backend_can_start_eip(self):
"""
TRIGGER:
@@ -1007,22 +1009,22 @@ class MainWindow(QtGui.QMainWindow):
today = datetime.now().date()
greet = ("Happy New 1984!... or not ;)<br><br>"
if today.month == 1 and today.day < 15 else "")
- QtGui.QMessageBox.about(
- self, self.tr("About Bitmask - %s") % (VERSION,),
- self.tr("Version: <b>%s</b> (%s)<br>"
- "<br>%s"
- "Bitmask is the Desktop client application for "
- "the LEAP platform, supporting encrypted internet "
- "proxy, secure email, and secure chat (coming soon).<br>"
- "<br>"
- "LEAP is a non-profit dedicated to giving "
- "all internet users access to secure "
- "communication. Our focus is on adapting "
- "encryption technology to make it easy to use "
- "and widely available. <br>"
- "<br>"
- "<a href='https://leap.se'>More about LEAP"
- "</a>") % (VERSION, VERSION_HASH[:10], greet))
+ title = self.tr("About Bitmask - %s") % (VERSION,)
+ msg = self.tr(
+ "Version: <b>{ver}</b> ({ver_hash})<br>"
+ "<br>{greet}"
+ "Bitmask is the Desktop client application for the LEAP "
+ "platform, supporting encrypted internet proxy.<br>"
+ # "Secure email is comming soon.<br>"
+ "<br>"
+ "LEAP is a non-profit dedicated to giving all internet users "
+ "access to secure communication. Our focus is on adapting "
+ "encryption technology to make it easy to use and widely "
+ "available.<br>"
+ "<br>"
+ "<a href='https://leap.se'>More about LEAP</a>")
+ msg = msg.format(ver=VERSION, ver_hash=VERSION_HASH[:10], greet=greet)
+ QtGui.QMessageBox.about(self, title, msg)
@QtCore.Slot()
def _help(self):
diff --git a/src/leap/bitmask/services/eip/eipconfig.py b/src/leap/bitmask/services/eip/eipconfig.py
index 5b51d12e..659ca1b1 100644
--- a/src/leap/bitmask/services/eip/eipconfig.py
+++ b/src/leap/bitmask/services/eip/eipconfig.py
@@ -216,7 +216,7 @@ class EIPConfig(ServiceConfig):
"""
_service_name = "eip"
- OPENVPN_ALLOWED_KEYS = ("auth", "cipher", "tls-cipher")
+ OPENVPN_ALLOWED_KEYS = ("auth", "cipher", "tls-cipher", "fragment")
OPENVPN_CIPHERS_REGEX = re.compile("[A-Z0-9\-]+")
def __init__(self):
@@ -255,6 +255,11 @@ class EIPConfig(ServiceConfig):
These are sanitized with alphanumeric whitelist.
+ NOTE: some openvpn config option don't take a value, but
+ this method currently requires that every option has a value.
+ Also, this does not yet work with values with spaces, like
+ `keepalive 10 30`
+
:returns: openvpn configuration dict
:rtype: C{dict}
"""
@@ -262,7 +267,7 @@ class EIPConfig(ServiceConfig):
config = {}
for key, value in ovpncfg.items():
if key in self.OPENVPN_ALLOWED_KEYS and value is not None:
- sanitized_val = self.OPENVPN_CIPHERS_REGEX.findall(value)
+ sanitized_val = self.OPENVPN_CIPHERS_REGEX.findall(str(value))
if len(sanitized_val) != 0:
_val = sanitized_val[0]
config[str(key)] = str(_val)
diff --git a/src/leap/bitmask/util/privilege_policies.py b/src/leap/bitmask/util/privilege_policies.py
index 2016e67b..68a1af28 100644
--- a/src/leap/bitmask/util/privilege_policies.py
+++ b/src/leap/bitmask/util/privilege_policies.py
@@ -179,6 +179,7 @@ class LinuxPolicyChecker(PolicyChecker):
'ps aux | grep "polkit-[k]de-authentication-agent-1"',
'ps aux | grep "polkit-[m]ate-authentication-agent-1"',
'ps aux | grep "[l]xpolkit"',
+ 'ps aux | grep "[l]xsession"',
'ps aux | grep "[g]nome-shell"',
'ps aux | grep "[f]ingerprint-polkit-agent"',
]