summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorDavid Lönnhager <david.l@mullvad.net>2020-02-28 11:24:11 +0100
committerDavid Lönnhager <david.l@mullvad.net>2020-06-02 10:05:01 +0200
commit9d783fcb730faddf8fd6d45957d6e7c78062444f (patch)
treefabe51d30d1fb485373fb1fca44393d022bf1ab4
parentaca87ec63a5fc2b254ff26400cbd0e959cfc832d (diff)
downloadmullvadvpn-9d783fcb730faddf8fd6d45957d6e7c78062444f.tar.xz
mullvadvpn-9d783fcb730faddf8fd6d45957d6e7c78062444f.zip
Add function to clear split tunnel PIDs
-rw-r--r--talpid-core/src/split.rs12
1 files changed, 12 insertions, 0 deletions
diff --git a/talpid-core/src/split.rs b/talpid-core/src/split.rs
index 71b9926ec3..b6e106a4b2 100644
--- a/talpid-core/src/split.rs
+++ b/talpid-core/src/split.rs
@@ -93,3 +93,15 @@ pub fn list_pids() -> Result<Vec<i32>, Error> {
.collect();
result.map_err(Error::ListCGroupPids)
}
+
+/// Clear list of PIDs to exclude from the tunnel.
+pub fn clear_pids() -> Result<(), Error> {
+ // TODO: reuse file handle
+ let pids = list_pids()?;
+
+ for pid in pids {
+ remove_pid(pid)?;
+ }
+
+ Ok(())
+}