summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorTobias Järvelöv <tobias.jarvelov@mullvad.net>2025-04-04 16:29:21 +0200
committerSebastian Holmin <sebastian.holmin@mullvad.net>2025-05-28 13:25:24 +0200
commit8038062df258215fda29d31fe7545ed1cfea2e0b (patch)
tree85de406178a806e78e8f84e0fa97bde691622b12
parent0d3fdac763c8159fb37c969ed0daccfdfaa62616 (diff)
downloadmullvadvpn-8038062df258215fda29d31fe7545ed1cfea2e0b.tar.xz
mullvadvpn-8038062df258215fda29d31fe7545ed1cfea2e0b.zip
Update daemon ownership check for Mac OS
On Mac OS the daemon socket is owned by root as the user and daemon as the group. Their ids are: root: 0 daemon: 1
-rw-r--r--desktop/packages/mullvad-vpn/src/main/daemon-rpc.ts8
1 files changed, 6 insertions, 2 deletions
diff --git a/desktop/packages/mullvad-vpn/src/main/daemon-rpc.ts b/desktop/packages/mullvad-vpn/src/main/daemon-rpc.ts
index 4e2159ffc6..ff9acc8eca 100644
--- a/desktop/packages/mullvad-vpn/src/main/daemon-rpc.ts
+++ b/desktop/packages/mullvad-vpn/src/main/daemon-rpc.ts
@@ -105,9 +105,13 @@ export class DaemonRpc extends GrpcClient {
} catch {
throw new Error('Failed to verify admin ownership of named pipe');
}
- } else {
+ } else if (process.platform === 'darwin') {
+ const stat = fs.statSync(DAEMON_RPC_PATH);
+ if (stat.uid !== 0 || stat.gid !== 1) {
+ throw new Error('Failed to verify root ownership of socket');
+ }
+ } else if (process.platform === 'linux') {
const stat = fs.statSync(DAEMON_RPC_PATH);
- // We assume the uid/gid for root is 0
if (stat.uid !== 0 || stat.gid !== 0) {
throw new Error('Failed to verify root ownership of socket');
}