diff options
Diffstat (limited to 'src/leap/bitmask/vpn')
-rw-r--r-- | src/leap/bitmask/vpn/_checks.py | 3 | ||||
-rw-r--r-- | src/leap/bitmask/vpn/helpers/__init__.py | 1 | ||||
-rw-r--r-- | src/leap/bitmask/vpn/privilege.py | 3 |
3 files changed, 6 insertions, 1 deletions
diff --git a/src/leap/bitmask/vpn/_checks.py b/src/leap/bitmask/vpn/_checks.py index 681f7428..2549e366 100644 --- a/src/leap/bitmask/vpn/_checks.py +++ b/src/leap/bitmask/vpn/_checks.py @@ -27,6 +27,9 @@ def get_failure_for(provider): def is_service_ready(provider): if not _has_valid_cert(provider): return False + if os.getuid() == 0: + # it's your problem if you run as root, not mine. + return True if IS_LINUX and not is_pkexec_in_system(): log.warn('System has no pkexec') return False diff --git a/src/leap/bitmask/vpn/helpers/__init__.py b/src/leap/bitmask/vpn/helpers/__init__.py index 69b34e00..b0f6990f 100644 --- a/src/leap/bitmask/vpn/helpers/__init__.py +++ b/src/leap/bitmask/vpn/helpers/__init__.py @@ -62,7 +62,6 @@ if IS_LINUX: openvpn = (os.path.exists(OPENVPN_SYSTEM) or _is_up_to_date(_config.get_bitmask_openvpn_path(), OPENVPN_LOCAL, "")) - return helper and polkit and openvpn def _is_up_to_date(src, local, system): diff --git a/src/leap/bitmask/vpn/privilege.py b/src/leap/bitmask/vpn/privilege.py index 1856ec8c..9c9ce130 100644 --- a/src/leap/bitmask/vpn/privilege.py +++ b/src/leap/bitmask/vpn/privilege.py @@ -147,6 +147,9 @@ class LinuxPolicyChecker(object): # Note that gnome-shell does not uses a separate process for the # polkit-agent, it uses a polkit-agent within its own process so we # can't ps-grep a polkit process, we can ps-grep gnome-shell itself. + if os.getuid() == 0: + # if you're running as root, it's your problem, not mine. + return True running = False for proc in psutil.process_iter(): |