summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorEmīls <emils@mullvad.net>2020-12-08 17:23:20 +0000
committerEmīls <emils@mullvad.net>2020-12-08 17:23:20 +0000
commitb9fa418e643abafd792b53d7bceadd918226d3b1 (patch)
treef93a40b88fd0c2ebd234afdd0c6b69463da5c338
parent89cc96ddc3437c4b529751cef192c90cb6413db7 (diff)
parent9fd19f29ad659ca72487227339aeb6470beb10d5 (diff)
downloadmullvadvpn-b9fa418e643abafd792b53d7bceadd918226d3b1.tar.xz
mullvadvpn-b9fa418e643abafd792b53d7bceadd918226d3b1.zip
Merge branch 'linux-fix-nm-conn-check-disabling' into master
-rw-r--r--talpid-core/src/tunnel_state_machine/mod.rs24
1 files changed, 10 insertions, 14 deletions
diff --git a/talpid-core/src/tunnel_state_machine/mod.rs b/talpid-core/src/tunnel_state_machine/mod.rs
index adafe9f16e..fbec1bf2b1 100644
--- a/talpid-core/src/tunnel_state_machine/mod.rs
+++ b/talpid-core/src/tunnel_state_machine/mod.rs
@@ -359,28 +359,24 @@ impl SharedTunnelStateValues {
/// reset whenever the firewall is cleared.
#[cfg(target_os = "linux")]
pub fn disable_connectivity_check(&mut self) {
- if self.connectivity_check_was_enabled.is_some() {
- log::trace!("Connectivity check already disabled");
- return;
- };
-
- if let Ok(nm) = crate::linux::network_manager::NetworkManager::new() {
- self.connectivity_check_was_enabled = nm.disable_connectivity_check();
+ if self.connectivity_check_was_enabled.is_none() {
+ if let Ok(nm) = crate::linux::network_manager::NetworkManager::new() {
+ self.connectivity_check_was_enabled = nm.disable_connectivity_check();
+ }
+ } else {
+ log::trace!("Daemon already disabled connectivity check");
}
}
/// Reset NetworkManager's connectivity check if it was disabled.
#[cfg(target_os = "linux")]
pub fn reset_connectivity_check(&mut self) {
- if self.connectivity_check_was_enabled.is_some() {
- log::trace!("Connectivity check already disabled");
- return;
- };
-
- if let Ok(nm) = crate::linux::network_manager::NetworkManager::new() {
- if let Some(true) = self.connectivity_check_was_enabled.take() {
+ if self.connectivity_check_was_enabled.take() == Some(true) {
+ if let Ok(nm) = crate::linux::network_manager::NetworkManager::new() {
nm.enable_connectivity_check();
}
+ } else {
+ log::trace!("Connectivity check wasn't disabled by the daemon");
}
}
}