diff options
| author | Linus Färnstrand <faern@faern.net> | 2023-04-21 09:42:02 +0200 |
|---|---|---|
| committer | Linus Färnstrand <linus@mullvad.net> | 2023-04-21 11:21:12 +0200 |
| commit | c1510d99ff7724b8bc9572ca1daed07e5f7e1876 (patch) | |
| tree | ea348ff4b5bc286e458e6f6f6b02da75cd27265e /talpid-core/src | |
| parent | 2bc1ee9f9f99ebd381faee3208f48f17b61d1579 (diff) | |
| download | mullvadvpn-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.rs | 4 | ||||
| -rw-r--r-- | talpid-core/src/dns/windows/iphlpapi.rs | 4 | ||||
| -rw-r--r-- | talpid-core/src/firewall/windows.rs | 18 | ||||
| -rw-r--r-- | talpid-core/src/offline/windows.rs | 6 | ||||
| -rw-r--r-- | talpid-core/src/split_tunnel/windows/driver.rs | 12 | ||||
| -rw-r--r-- | talpid-core/src/split_tunnel/windows/mod.rs | 16 | ||||
| -rw-r--r-- | talpid-core/src/split_tunnel/windows/path_monitor.rs | 10 | ||||
| -rw-r--r-- | talpid-core/src/split_tunnel/windows/volume_monitor.rs | 14 | ||||
| -rw-r--r-- | talpid-core/src/tunnel_state_machine/connecting_state.rs | 2 | ||||
| -rw-r--r-- | talpid-core/src/tunnel_state_machine/disconnected_state.rs | 13 |
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, ¶ms), + 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") + ); } } |
