diff options
| author | David Lönnhager <david.l@mullvad.net> | 2020-02-28 11:01:58 +0100 |
|---|---|---|
| committer | David Lönnhager <david.l@mullvad.net> | 2020-06-02 10:05:01 +0200 |
| commit | aca87ec63a5fc2b254ff26400cbd0e959cfc832d (patch) | |
| tree | 4105c95b7c41dd86477d88cfae52a85ee1f1b6d1 /talpid-core/src | |
| parent | d20979f07e671c50700304ffdabf7854788e85d6 (diff) | |
| download | mullvadvpn-aca87ec63a5fc2b254ff26400cbd0e959cfc832d.tar.xz mullvadvpn-aca87ec63a5fc2b254ff26400cbd0e959cfc832d.zip | |
Initialize cgroup
Diffstat (limited to 'talpid-core/src')
| -rw-r--r-- | talpid-core/src/tunnel_state_machine/mod.rs | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/talpid-core/src/tunnel_state_machine/mod.rs b/talpid-core/src/tunnel_state_machine/mod.rs index 2ffce2bec9..3e75206e33 100644 --- a/talpid-core/src/tunnel_state_machine/mod.rs +++ b/talpid-core/src/tunnel_state_machine/mod.rs @@ -20,6 +20,7 @@ use crate::{ mpsc::Sender, offline, routing::RouteManager, + split, tunnel::tun_provider::TunProvider, }; @@ -50,6 +51,10 @@ pub enum Error { #[error(display = "Unable to spawn offline state monitor")] OfflineMonitorError(#[error(source)] crate::offline::Error), + /// Unable to set up split tunneling + #[error(display = "Failed to initialize split tunneling")] + InitSplitTunneling(#[error(source)] crate::split::Error), + /// Failed to initialize the system firewall integration. #[error(display = "Failed to initialize the system firewall integration")] InitFirewallError(#[error(source)] crate::firewall::Error), @@ -235,6 +240,10 @@ impl TunnelStateMachine { allow_lan: None, } }; + + #[cfg(unix)] + split::create_cgroup().map_err(Error::InitSplitTunneling)?; + let firewall = Firewall::new(args).map_err(Error::InitFirewallError)?; let dns_monitor = DnsMonitor::new(cache_dir).map_err(Error::InitDnsMonitorError)?; let route_manager = |
