summaryrefslogtreecommitdiffhomepage
path: root/talpid-core/src
diff options
context:
space:
mode:
authorLinus Färnstrand <faern@faern.net>2023-04-21 09:42:02 +0200
committerLinus Färnstrand <linus@mullvad.net>2023-04-21 11:21:12 +0200
commitc1510d99ff7724b8bc9572ca1daed07e5f7e1876 (patch)
treeea348ff4b5bc286e458e6f6f6b02da75cd27265e /talpid-core/src
parent2bc1ee9f9f99ebd381faee3208f48f17b61d1579 (diff)
downloadmullvadvpn-c1510d99ff7724b8bc9572ca1daed07e5f7e1876.tar.xz
mullvadvpn-c1510d99ff7724b8bc9572ca1daed07e5f7e1876.zip
Apply clippy --fix fixes
This commit does not contain everything that `cargo clippy --fix` changed on Windows. But the least controversial and simplest subset. The remaining fixes I felt could use some manual cleanup also.
Diffstat (limited to 'talpid-core/src')
-rw-r--r--talpid-core/src/dns/windows/dnsapi.rs4
-rw-r--r--talpid-core/src/dns/windows/iphlpapi.rs4
-rw-r--r--talpid-core/src/firewall/windows.rs18
-rw-r--r--talpid-core/src/offline/windows.rs6
-rw-r--r--talpid-core/src/split_tunnel/windows/driver.rs12
-rw-r--r--talpid-core/src/split_tunnel/windows/mod.rs16
-rw-r--r--talpid-core/src/split_tunnel/windows/path_monitor.rs10
-rw-r--r--talpid-core/src/split_tunnel/windows/volume_monitor.rs14
-rw-r--r--talpid-core/src/tunnel_state_machine/connecting_state.rs2
-rw-r--r--talpid-core/src/tunnel_state_machine/disconnected_state.rs13
10 files changed, 45 insertions, 54 deletions
diff --git a/talpid-core/src/dns/windows/dnsapi.rs b/talpid-core/src/dns/windows/dnsapi.rs
index e48f37258e..f315aba3f4 100644
--- a/talpid-core/src/dns/windows/dnsapi.rs
+++ b/talpid-core/src/dns/windows/dnsapi.rs
@@ -50,9 +50,7 @@ pub enum Error {
}
pub fn flush_resolver_cache() -> Result<(), Error> {
- DNSAPI_HANDLE
- .get_or_try_init(|| DnsApi::new())?
- .flush_cache()
+ DNSAPI_HANDLE.get_or_try_init(DnsApi::new)?.flush_cache()
}
struct DnsApi {
diff --git a/talpid-core/src/dns/windows/iphlpapi.rs b/talpid-core/src/dns/windows/iphlpapi.rs
index 6f33cf3cf9..98f5034060 100644
--- a/talpid-core/src/dns/windows/iphlpapi.rs
+++ b/talpid-core/src/dns/windows/iphlpapi.rs
@@ -105,7 +105,7 @@ pub struct DnsMonitor {
impl DnsMonitor {
pub fn is_supported() -> bool {
- IPHLPAPI_HANDLE.get_or_try_init(|| IphlpApi::new()).is_ok()
+ IPHLPAPI_HANDLE.get_or_try_init(IphlpApi::new).is_ok()
}
}
@@ -173,7 +173,7 @@ fn set_interface_dns_servers<T: ToString>(
servers: &[T],
flags: u32,
) -> Result<(), Error> {
- let iphlpapi = IPHLPAPI_HANDLE.get_or_try_init(|| IphlpApi::new())?;
+ let iphlpapi = IPHLPAPI_HANDLE.get_or_try_init(IphlpApi::new)?;
// Create comma-separated nameserver list
let nameservers = servers
diff --git a/talpid-core/src/firewall/windows.rs b/talpid-core/src/firewall/windows.rs
index fa40fdcb42..6f727f543b 100644
--- a/talpid-core/src/firewall/windows.rs
+++ b/talpid-core/src/firewall/windows.rs
@@ -80,7 +80,7 @@ impl Firewall {
unsafe {
WinFw_InitializeBlocked(
WINFW_TIMEOUT_SECONDS,
- &cfg,
+ cfg,
&allowed_endpoint.as_endpoint(),
Some(log_sink),
LOGGING_CONTEXT.as_ptr(),
@@ -105,7 +105,7 @@ impl Firewall {
self.set_connecting_state(
&peer_endpoint,
- &cfg,
+ cfg,
&tunnel,
&WinFwAllowedEndpointContainer::from(allowed_endpoint).as_endpoint(),
&allowed_tunnel_traffic,
@@ -120,7 +120,7 @@ impl Firewall {
relay_client,
} => {
let cfg = &WinFwSettings::new(allow_lan);
- self.set_connected_state(&peer_endpoint, &cfg, &tunnel, &dns_servers, &relay_client)
+ self.set_connected_state(&peer_endpoint, cfg, &tunnel, &dns_servers, &relay_client)
}
FirewallPolicy::Blocked {
allow_lan,
@@ -128,8 +128,8 @@ impl Firewall {
} => {
let cfg = &WinFwSettings::new(allow_lan);
self.set_blocked_state(
- &cfg,
- allowed_endpoint.map(|endpoint| WinFwAllowedEndpointContainer::from(endpoint)),
+ cfg,
+ allowed_endpoint.map(WinFwAllowedEndpointContainer::from),
)
}
}
@@ -427,7 +427,7 @@ mod winfw {
let clients = endpoint
.clients
.iter()
- .map(|client| WideCString::from_os_str_truncate(client))
+ .map(WideCString::from_os_str_truncate)
.collect::<Box<_>>();
let clients_ptrs = clients
.iter()
@@ -568,9 +568,9 @@ mod winfw {
}
}
- impl Into<Result<(), super::FirewallPolicyError>> for WinFwPolicyStatus {
- fn into(self) -> Result<(), super::FirewallPolicyError> {
- self.into_result()
+ impl From<WinFwPolicyStatus> for Result<(), super::FirewallPolicyError> {
+ fn from(val: WinFwPolicyStatus) -> Self {
+ val.into_result()
}
}
diff --git a/talpid-core/src/offline/windows.rs b/talpid-core/src/offline/windows.rs
index 77e8fca968..d669a018fa 100644
--- a/talpid-core/src/offline/windows.rs
+++ b/talpid-core/src/offline/windows.rs
@@ -113,12 +113,12 @@ impl BroadcastListener {
Self::connectivity_callback(event, addr_family, &system_state)
}))
.await
- .map_err(|e| Error::ConnectivityMonitorError(e))?;
+ .map_err(Error::ConnectivityMonitorError)?;
Ok(change_handle)
}
- fn connectivity_callback<'a>(
- event_type: EventType<'a>,
+ fn connectivity_callback(
+ event_type: EventType<'_>,
family: AddressFamily,
state_lock: &Arc<Mutex<SystemState>>,
) {
diff --git a/talpid-core/src/split_tunnel/windows/driver.rs b/talpid-core/src/split_tunnel/windows/driver.rs
index 2eb9aecd30..8beb6de691 100644
--- a/talpid-core/src/split_tunnel/windows/driver.rs
+++ b/talpid-core/src/split_tunnel/windows/driver.rs
@@ -338,13 +338,13 @@ impl DeviceHandle {
let raw_state: u64 = unsafe { deserialize_buffer(&buffer[0..size_of::<u64>()]) };
- Ok(DriverState::try_from(raw_state)
- .map_err(|error| io::Error::new(io::ErrorKind::Other, error))?)
+ DriverState::try_from(raw_state)
+ .map_err(|error| io::Error::new(io::ErrorKind::Other, error))
}
pub fn set_config<T: AsRef<OsStr>>(&self, apps: &[T]) -> io::Result<()> {
let mut device_paths = Vec::with_capacity(apps.len());
- for app in apps.as_ref() {
+ for app in apps {
match get_device_path(app.as_ref()) {
Err(error) if error.kind() == io::ErrorKind::NotFound => {
log::debug!(
@@ -455,7 +455,7 @@ fn make_process_config<T: AsRef<OsStr>>(apps: &[T]) -> Vec<MaybeUninit<u8>> {
let mut string_offset = 0;
for (i, app) in apps.iter().enumerate() {
- write_string_to_buffer(string_data, string_offset, &app);
+ write_string_to_buffer(string_data, string_offset, app);
let app_bytelen = size_of::<u16>() * app.len();
let entry = ConfigurationEntry {
@@ -542,8 +542,8 @@ fn build_process_tree() -> io::Result<Vec<ProcessInfo>> {
}
Ok(process_info
- .into_iter()
- .map(|(_, info)| info.into_inner())
+ .into_values()
+ .map(|info| info.into_inner())
.collect())
}
diff --git a/talpid-core/src/split_tunnel/windows/mod.rs b/talpid-core/src/split_tunnel/windows/mod.rs
index 5210bb98b8..022d66fed1 100644
--- a/talpid-core/src/split_tunnel/windows/mod.rs
+++ b/talpid-core/src/split_tunnel/windows/mod.rs
@@ -316,7 +316,7 @@ impl SplitTunnel {
data_buffer
.truncate(usize::try_from(returned_bytes).expect("usize must be no smaller than u32"));
- driver::parse_event_buffer(&data_buffer)
+ driver::parse_event_buffer(data_buffer)
.map(|(id, body)| EventResult::Event(id, body))
.map_err(|error| {
log::error!(
@@ -445,7 +445,7 @@ impl SplitTunnel {
Request::SetPaths(paths) => {
let mut monitored_paths_guard = monitored_paths.lock().unwrap();
- let result = if paths.len() > 0 {
+ let result = if !paths.is_empty() {
handle.set_config(&paths).map_err(Error::SetConfiguration)
} else {
handle.clear_config().map_err(Error::SetConfiguration)
@@ -535,7 +535,7 @@ impl SplitTunnel {
let paths = monitored_paths_copy.lock().unwrap();
let result = if paths.len() > 0 {
log::debug!("Re-resolving excluded paths");
- handle_copy.set_config(&*paths)
+ handle_copy.set_config(&paths)
} else {
continue;
};
@@ -621,8 +621,8 @@ impl SplitTunnel {
if let Some(metadata) = metadata {
for ip in &metadata.ips {
match ip {
- IpAddr::V4(address) => tunnel_ipv4 = Some(address.clone()),
- IpAddr::V6(address) => tunnel_ipv6 = Some(address.clone()),
+ IpAddr::V4(address) => tunnel_ipv4 = Some(*address),
+ IpAddr::V6(address) => tunnel_ipv6 = Some(*address),
}
}
}
@@ -783,8 +783,8 @@ impl SplitTunnelDefaultRouteChangeHandlerContext {
}
}
-fn split_tunnel_default_route_change_handler<'a>(
- event_type: EventType<'a>,
+fn split_tunnel_default_route_change_handler(
+ event_type: EventType<'_>,
address_family: AddressFamily,
ctx_mutex: &Arc<Mutex<SplitTunnelDefaultRouteChangeHandlerContext>>,
) {
@@ -803,7 +803,7 @@ fn split_tunnel_default_route_change_handler<'a>(
let result = match event_type {
Updated(default_route) | UpdatedDetails(default_route) => {
match get_ip_address_for_interface(address_family, default_route.iface) {
- Ok(Some(ip)) => match IpAddr::from(ip) {
+ Ok(Some(ip)) => match ip {
IpAddr::V4(addr) => ctx.addresses.internet_ipv4 = Some(addr),
IpAddr::V6(addr) => ctx.addresses.internet_ipv6 = Some(addr),
},
diff --git a/talpid-core/src/split_tunnel/windows/path_monitor.rs b/talpid-core/src/split_tunnel/windows/path_monitor.rs
index 22a3747d25..c40fec6dea 100644
--- a/talpid-core/src/split_tunnel/windows/path_monitor.rs
+++ b/talpid-core/src/split_tunnel/windows/path_monitor.rs
@@ -110,9 +110,7 @@ macro_rules! get_reparse_path {
} else {
let path_buffer = (&reparse_data.path_buffer) as *const u16;
let parsed_path = std::slice::from_raw_parts(
- path_buffer.offset(
- (reparse_data.sub_name_offset as usize / mem::size_of::<u16>()) as isize,
- ),
+ path_buffer.add((reparse_data.sub_name_offset as usize / mem::size_of::<u16>())),
reparse_data.sub_name_length as usize / mem::size_of::<u16>(),
);
Ok::<PathBuf, io::Error>(PathBuf::from(OsString::from_wide(parsed_path)))
@@ -433,7 +431,7 @@ impl StrippedPath {
))?);
Ok(StrippedPath {
- prefix: prefix.clone(),
+ prefix,
tail: osstr_to_wide(iter.as_path()),
})
}
@@ -542,10 +540,10 @@ impl PathMonitor {
}
PathMonitorCommand::SetPaths(new_paths) => {
*original_paths = new_paths;
- return !self.update_paths(&original_paths, false).is_err();
+ return self.update_paths(original_paths, false).is_ok();
}
PathMonitorCommand::Refresh => {
- return !self.update_paths(&original_paths, true).is_err();
+ return self.update_paths(original_paths, true).is_ok();
}
}
}
diff --git a/talpid-core/src/split_tunnel/windows/volume_monitor.rs b/talpid-core/src/split_tunnel/windows/volume_monitor.rs
index 34ba36089e..0d35187070 100644
--- a/talpid-core/src/split_tunnel/windows/volume_monitor.rs
+++ b/talpid-core/src/split_tunnel/windows/volume_monitor.rs
@@ -132,12 +132,10 @@ fn start_internal_monitor(
// Compare against known state to ignore duplicate notifications
// from frontends
let state_diff = *known_state_guard ^ prev_state;
- if state_diff != 0 {
- if matches_volume(volumes, &paths_guard) {
- // Reapply config
- let _ = update_tx.send(());
- let _ = path_monitor.refresh();
- }
+ if state_diff != 0 && matches_volume(volumes, &paths_guard) {
+ // Reapply config
+ let _ = update_tx.send(());
+ let _ = path_monitor.refresh();
}
// Always grant the request
@@ -163,11 +161,11 @@ fn matches_volume(volumes: u32, paths_guard: &MutexGuard<'_, Vec<OsString>>) ->
if let Some(path::Component::Prefix(prefix)) = path.components().next() {
match prefix.kind() {
path::Prefix::VerbatimDisk(disk) | path::Prefix::Disk(disk) => {
- if disk < 'A' as u8 || disk > 'Z' as u8 {
+ if !disk.is_ascii_uppercase() {
log::warn!("Ignoring invalid volume \"{}\"", disk as char);
continue;
}
- let disk = disk - 'A' as u8;
+ let disk = disk - b'A';
if volumes & (1 << disk) != 0 {
return true;
}
diff --git a/talpid-core/src/tunnel_state_machine/connecting_state.rs b/talpid-core/src/tunnel_state_machine/connecting_state.rs
index ac8e0debd9..821e076db6 100644
--- a/talpid-core/src/tunnel_state_machine/connecting_state.rs
+++ b/talpid-core/src/tunnel_state_machine/connecting_state.rs
@@ -72,7 +72,7 @@ impl ConnectingState {
allowed_endpoint: shared_values.allowed_endpoint.clone(),
allowed_tunnel_traffic,
#[cfg(windows)]
- relay_client: TunnelMonitor::get_relay_client(&shared_values.resource_dir, &params),
+ relay_client: TunnelMonitor::get_relay_client(&shared_values.resource_dir, params),
};
shared_values
.firewall
diff --git a/talpid-core/src/tunnel_state_machine/disconnected_state.rs b/talpid-core/src/tunnel_state_machine/disconnected_state.rs
index b6b52bbc45..8462f56e10 100644
--- a/talpid-core/src/tunnel_state_machine/disconnected_state.rs
+++ b/talpid-core/src/tunnel_state_machine/disconnected_state.rs
@@ -60,14 +60,11 @@ impl DisconnectedState {
)
);
}
- } else {
- if let Err(error) = shared_values.split_tunnel.set_tunnel_addresses(None) {
- log::error!(
- "{}",
- error
- .display_chain_with_msg("Failed to reset addresses in split tunnel driver")
- );
- }
+ } else if let Err(error) = shared_values.split_tunnel.set_tunnel_addresses(None) {
+ log::error!(
+ "{}",
+ error.display_chain_with_msg("Failed to reset addresses in split tunnel driver")
+ );
}
}