diff options
| author | Linus Färnstrand <linus@mullvad.net> | 2018-09-27 15:16:55 +0200 |
|---|---|---|
| committer | Linus Färnstrand <linus@mullvad.net> | 2018-09-27 15:16:55 +0200 |
| commit | 763d5e200947d616865ec3292c27347739d2d386 (patch) | |
| tree | eb7db04951974780a61c0c4ad948c5e1c3b360fa /talpid-core/src | |
| parent | 00b0ba04092e97f3724260b943f3b138e8eb7b01 (diff) | |
| download | mullvadvpn-763d5e200947d616865ec3292c27347739d2d386.tar.xz mullvadvpn-763d5e200947d616865ec3292c27347739d2d386.zip | |
Reformat with rustfmt 0.99.5
Diffstat (limited to 'talpid-core/src')
| -rw-r--r-- | talpid-core/src/security/macos/dns.rs | 97 | ||||
| -rw-r--r-- | talpid-core/src/security/macos/mod.rs | 9 | ||||
| -rw-r--r-- | talpid-core/src/security/windows/dns.rs | 3 | ||||
| -rw-r--r-- | talpid-core/src/security/windows/mod.rs | 6 | ||||
| -rw-r--r-- | talpid-core/src/tunnel/mod.rs | 6 | ||||
| -rw-r--r-- | talpid-core/src/tunnel/openvpn.rs | 22 |
6 files changed, 80 insertions, 63 deletions
diff --git a/talpid-core/src/security/macos/dns.rs b/talpid-core/src/security/macos/dns.rs index 5cadf3f58d..6ecc9cfbd0 100644 --- a/talpid-core/src/security/macos/dns.rs +++ b/talpid-core/src/security/macos/dns.rs @@ -89,19 +89,21 @@ impl DnsMonitor { backup, } } - Some(state) => if servers != state.desired_dns { - debug!("Changing DNS to [{}]", servers.join(", ")); - for service_path in state.backup.keys() { - set_dns(&self.store, CFString::new(service_path), &servers)?; - } - State { - desired_dns: servers, - backup: state.backup, + Some(state) => { + if servers != state.desired_dns { + debug!("Changing DNS to [{}]", servers.join(", ")); + for service_path in state.backup.keys() { + set_dns(&self.store, CFString::new(service_path), &servers)?; + } + State { + desired_dns: servers, + backup: state.backup, + } + } else { + debug!("No change, new DNS same as the one already set"); + state } - } else { - debug!("No change, new DNS same as the one already set"); - state - }, + } }); Ok(()) } @@ -180,41 +182,45 @@ fn dns_change_callback_internal( None => { trace!("Not injecting DNS at this time"); } - Some(ref mut state) => for path in changed_keys.iter() { - let should_set_dns = match read_dns(&store, path.clone()) { - None => { - debug!("Detected DNS removed for {}", *path); - state.backup.insert(path.to_string(), None); - true - } - Some(servers) => if servers != state.desired_dns { - debug!( - "Detected DNS changed to [{}] for {}", - servers.join(", "), - *path - ); - state.backup.insert(path.to_string(), Some(servers)); - true - } else { - false - }, - }; - if should_set_dns { - set_dns(&store, path.clone(), &state.desired_dns) - .chain_err(|| format!("Failed changing DNS for {}", *path))?; - // If we changed a state DNS, also set the corresponding setup DNS. - if let Some(setup_path_str) = state_to_setup_path(&path.to_string()) { - let setup_path = CFString::new(&setup_path_str); - if !state.backup.contains_key(&setup_path_str) { - state - .backup - .insert(setup_path_str, read_dns(&store, setup_path.clone())); + Some(ref mut state) => { + for path in changed_keys.iter() { + let should_set_dns = match read_dns(&store, path.clone()) { + None => { + debug!("Detected DNS removed for {}", *path); + state.backup.insert(path.to_string(), None); + true + } + Some(servers) => { + if servers != state.desired_dns { + debug!( + "Detected DNS changed to [{}] for {}", + servers.join(", "), + *path + ); + state.backup.insert(path.to_string(), Some(servers)); + true + } else { + false + } + } + }; + if should_set_dns { + set_dns(&store, path.clone(), &state.desired_dns) + .chain_err(|| format!("Failed changing DNS for {}", *path))?; + // If we changed a state DNS, also set the corresponding setup DNS. + if let Some(setup_path_str) = state_to_setup_path(&path.to_string()) { + let setup_path = CFString::new(&setup_path_str); + if !state.backup.contains_key(&setup_path_str) { + state + .backup + .insert(setup_path_str, read_dns(&store, setup_path.clone())); + } + set_dns(&store, setup_path.clone(), &state.desired_dns) + .chain_err(|| format!("Failed changing DNS for {}", setup_path))?; } - set_dns(&store, setup_path.clone(), &state.desired_dns) - .chain_err(|| format!("Failed changing DNS for {}", setup_path))?; } } - }, + } } Ok(()) } @@ -281,7 +287,8 @@ fn read_dns(store: &SCDynamicStore, path: CFString) -> Option<Vec<DnsServer>> { dictionary .find2(&CFString::from_static_string("ServerAddresses")) .map(|array_ptr| unsafe { CFType::wrap_under_get_rule(array_ptr) }) - }).and_then(|addresses| { + }) + .and_then(|addresses| { if let Some(array) = addresses.downcast::<CFArray<CFType>>() { parse_cf_array_to_strings(array) } else { diff --git a/talpid-core/src/security/macos/mod.rs b/talpid-core/src/security/macos/mod.rs index 2d53ace804..f83567f91e 100644 --- a/talpid-core/src/security/macos/mod.rs +++ b/talpid-core/src/security/macos/mod.rs @@ -55,7 +55,8 @@ impl NetworkSecurityT for NetworkSecurity { self.remove_anchor(), self.restore_state(), self.restore_dns(), - ].into_iter() + ] + .into_iter() .collect::<Result<Vec<_>>>() .map(|_| ()) } @@ -206,7 +207,8 @@ impl NetworkSecurity { let allow_multicast = rule_builder .to(pfctl::Ip::from(ipnetwork_compat(IpNetwork::V4( *super::MULTICAST_NET, - )))).build()?; + )))) + .build()?; let allow_ssdp = rule_builder.to(pfctl::Ip::from(*super::SSDP_IP)).build()?; rules.push(allow_net); rules.push(allow_multicast); @@ -225,7 +227,8 @@ impl NetworkSecurity { let allow_multicast = rule_builder .to(pfctl::Ip::from(ipnetwork_compat(IpNetwork::V6( *super::MULTICAST_INET6_NET, - )))).build()?; + )))) + .build()?; rules.push(allow_net); rules.push(allow_multicast); } diff --git a/talpid-core/src/security/windows/dns.rs b/talpid-core/src/security/windows/dns.rs index f89d2e21b8..70ca60842d 100644 --- a/talpid-core/src/security/windows/dns.rs +++ b/talpid-core/src/security/windows/dns.rs @@ -91,7 +91,8 @@ impl WinDns { widestring_ips.len() as u32, Some(write_system_state_backup_cb), &self.backup_writer as *const _ as *const c_void, - ).into_result() + ) + .into_result() } } diff --git a/talpid-core/src/security/windows/mod.rs b/talpid-core/src/security/windows/mod.rs index 6ecca8988b..2dba99d724 100644 --- a/talpid-core/src/security/windows/mod.rs +++ b/talpid-core/src/security/windows/mod.rs @@ -76,7 +76,8 @@ impl NetworkSecurityT for NetworkSecurity { WINFW_TIMEOUT_SECONDS, Some(winnet::error_sink), ptr::null_mut(), - ).into_result()? + ) + .into_result()? }; trace!("Successfully initialized windows firewall module"); Ok(NetworkSecurity { dns: windns }) @@ -184,7 +185,8 @@ impl NetworkSecurity { &winfw_relay, tunnel_alias.as_wide_c_str().as_ptr(), gateway_str.as_wide_c_str().as_ptr(), - ).into_result() + ) + .into_result() } } diff --git a/talpid-core/src/tunnel/mod.rs b/talpid-core/src/tunnel/mod.rs index 2c84f16596..4a37296575 100644 --- a/talpid-core/src/tunnel/mod.rs +++ b/talpid-core/src/tunnel/mod.rs @@ -190,7 +190,8 @@ impl TunnelMonitor { cmd, on_openvpn_event, Self::get_plugin_path(resource_dir)?, - ).chain_err(|| ErrorKind::TunnelMonitoringError)?; + ) + .chain_err(|| ErrorKind::TunnelMonitoringError)?; Ok(TunnelMonitor { monitor, _user_pass_file: user_pass_file, @@ -337,7 +338,8 @@ fn is_ipv6_enabled_in_os() -> bool { .and_then(|ipv6_config| ipv6_config.get_value("DisabledComponents")) .map(|ipv6_disabled_bits: u32| { (ipv6_disabled_bits & IPV6_DISABLED_ON_TUNNELS_MASK) == 0 - }).unwrap_or(true); + }) + .unwrap_or(true); let enabled_on_tap = ::winnet::get_tap_interface_ipv6_status().unwrap_or(false); if !globally_enabled { diff --git a/talpid-core/src/tunnel/openvpn.rs b/talpid-core/src/tunnel/openvpn.rs index 8e89ed4a5c..0eeae37faf 100644 --- a/talpid-core/src/tunnel/openvpn.rs +++ b/talpid-core/src/tunnel/openvpn.rs @@ -89,16 +89,18 @@ impl<C: OpenVpnBuilder> OpenVpnMonitor<C> { /// for the process or in the event dispatcher. pub fn wait(mut self) -> Result<()> { match self.wait_result() { - WaitResult::Child(Ok(exit_status), closed) => if exit_status.success() || closed { - debug!( - "OpenVPN exited, as expected, with exit status: {}", - exit_status - ); - Ok(()) - } else { - error!("OpenVPN died unexpectedly with status: {}", exit_status); - Err(ErrorKind::ChildProcessError("Died unexpectedly").into()) - }, + WaitResult::Child(Ok(exit_status), closed) => { + if exit_status.success() || closed { + debug!( + "OpenVPN exited, as expected, with exit status: {}", + exit_status + ); + Ok(()) + } else { + error!("OpenVPN died unexpectedly with status: {}", exit_status); + Err(ErrorKind::ChildProcessError("Died unexpectedly").into()) + } + } WaitResult::Child(Err(e), _) => { error!("OpenVPN process wait error: {}", e); Err(e).chain_err(|| ErrorKind::ChildProcessError("Error when waiting")) |
