From dc9a8eaf91f2d9c6554d71b583552a554638abdf Mon Sep 17 00:00:00 2001 From: Jacek Chmielewski Date: Fri, 19 Apr 2024 11:53:57 +0200 Subject: [PATCH 1/2] Remove nonalphanumeric characters from interface name --- src-tauri/src/utils.rs | 12 +++--------- 1 file changed, 3 insertions(+), 9 deletions(-) diff --git a/src-tauri/src/utils.rs b/src-tauri/src/utils.rs index 0516d586..1eeb6c5c 100644 --- a/src-tauri/src/utils.rs +++ b/src-tauri/src/utils.rs @@ -15,7 +15,7 @@ use crate::{ appstate::AppState, commands::{LocationInterfaceDetails, Payload}, database::{ - models::location::peer_to_location_stats, models::tunnel::peer_to_tunnel_stats, + models::{location::peer_to_location_stats, tunnel::peer_to_tunnel_stats}, ActiveConnection, Connection, DbPool, Location, Tunnel, TunnelConnection, WireguardKeys, }, error::Error, @@ -119,12 +119,6 @@ pub async fn setup_interface( } } -/// Helper function to remove whitespace from location name -#[must_use] -pub fn remove_whitespace(s: &str) -> String { - s.chars().filter(|c| !c.is_whitespace()).collect() -} - fn find_random_free_port() -> Option { const MAX_PORT: u16 = 65535; const MIN_PORT: u16 = 6000; @@ -162,11 +156,11 @@ pub fn get_interface_name() -> String { "utun0".into() } -#[cfg(not(target_os = "macos"))] /// Returns interface name for location +#[cfg(not(target_os = "macos"))] #[must_use] pub fn get_interface_name(name: &str) -> String { - remove_whitespace(name) + name.chars().filter(|c| c.is_alphanumeric()).collect() } fn is_port_free(port: u16) -> bool { From 2317c1e2d6a341261be8d58944b952b79c70ef23 Mon Sep 17 00:00:00 2001 From: Jacek Chmielewski Date: Fri, 19 Apr 2024 13:05:23 +0200 Subject: [PATCH 2/2] Add docstring --- src-tauri/src/utils.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src-tauri/src/utils.rs b/src-tauri/src/utils.rs index 1eeb6c5c..bfd4bd8f 100644 --- a/src-tauri/src/utils.rs +++ b/src-tauri/src/utils.rs @@ -156,7 +156,7 @@ pub fn get_interface_name() -> String { "utun0".into() } -/// Returns interface name for location +/// Strips location name of all non-alphanumeric characters returning usable interface name. #[cfg(not(target_os = "macos"))] #[must_use] pub fn get_interface_name(name: &str) -> String {