diff options
| -rw-r--r-- | mullvad-daemon/src/lib.rs | 7 | ||||
| -rw-r--r-- | mullvad-daemon/src/main.rs | 7 |
2 files changed, 14 insertions, 0 deletions
diff --git a/mullvad-daemon/src/lib.rs b/mullvad-daemon/src/lib.rs index a042cb3a43..945e388999 100644 --- a/mullvad-daemon/src/lib.rs +++ b/mullvad-daemon/src/lib.rs @@ -755,6 +755,13 @@ where mem::drop(event_listener); mem::drop(rpc_runtime); + #[cfg(not(windows))] + if let Err(err) = fs::remove_file(mullvad_paths::get_rpc_socket_path()) { + if err.kind() != std::io::ErrorKind::NotFound { + log::error!("Failed to remove old RPC socket: {}", err); + } + } + if clean_up_target_cache { let target_cache = cache_dir.join(TARGET_START_STATE_FILE); let _ = fs::remove_file(target_cache).map_err(|e| { diff --git a/mullvad-daemon/src/main.rs b/mullvad-daemon/src/main.rs index 4e055183b9..199fa84152 100644 --- a/mullvad-daemon/src/main.rs +++ b/mullvad-daemon/src/main.rs @@ -98,6 +98,13 @@ async fn run_standalone(log_dir: Option<PathBuf>) -> Result<(), String> { return Err("Another instance of the daemon is already running".to_owned()); } + #[cfg(not(windows))] + if let Err(err) = tokio::fs::remove_file(mullvad_paths::get_rpc_socket_path()).await { + if err.kind() != std::io::ErrorKind::NotFound { + log::error!("Failed to remove old RPC socket: {}", err); + } + } + if !running_as_admin() { warn!("Running daemon as a non-administrator user, clients might refuse to connect"); } |
