diff options
| author | Linus Färnstrand <linus@mullvad.net> | 2020-08-26 16:32:43 +0200 |
|---|---|---|
| committer | Linus Färnstrand <linus@mullvad.net> | 2020-08-26 16:35:24 +0200 |
| commit | 1f551096cd94df9bf5aef353f5a973dbaf199237 (patch) | |
| tree | ec0dfe344a0c591b587f518c59852954de1e5878 | |
| parent | 447902b897e4545efa65f226c52f81172d23d8d8 (diff) | |
| download | mullvadvpn-1f551096cd94df9bf5aef353f5a973dbaf199237.tar.xz mullvadvpn-1f551096cd94df9bf5aef353f5a973dbaf199237.zip | |
Log if a cached target state is loaded upon daemon start
| -rw-r--r-- | mullvad-daemon/src/lib.rs | 9 | ||||
| -rw-r--r-- | mullvad-types/src/states.rs | 10 |
2 files changed, 17 insertions, 2 deletions
diff --git a/mullvad-daemon/src/lib.rs b/mullvad-daemon/src/lib.rs index 8b3aaeffd0..414d64e267 100644 --- a/mullvad-daemon/src/lib.rs +++ b/mullvad-daemon/src/lib.rs @@ -545,13 +545,19 @@ where .map_err(Error::ReadCachedTargetState), Err(e) => { if e.kind() == io::ErrorKind::NotFound { + debug!("No cached target state to load"); Ok(None) } else { Err(Error::OpenCachedTargetState(e)) } } }?; - if cached_target_state.is_some() { + if let Some(cached_target_state) = &cached_target_state { + info!( + "Loaded cached target state \"{}\" from {}", + cached_target_state, + target_cache.display() + ); let _ = fs::remove_file(target_cache).map_err(|e| { error!("Cannot delete target tunnel state cache: {}", e); }); @@ -586,7 +592,6 @@ where info!("Automatically connecting since auto-connect is turned on"); TargetState::Secured } else { - info!("Restoring cached target state"); cached_target_state.unwrap_or(TargetState::Unsecured) } } else { diff --git a/mullvad-types/src/states.rs b/mullvad-types/src/states.rs index e80b795bba..9d3b188db4 100644 --- a/mullvad-types/src/states.rs +++ b/mullvad-types/src/states.rs @@ -2,6 +2,7 @@ use crate::location::GeoIpLocation; #[cfg(target_os = "android")] use jnix::IntoJava; use serde::{Deserialize, Serialize}; +use std::fmt; use talpid_types::{ net::TunnelEndpoint, tunnel::{ActionAfterDisconnect, ErrorState}, @@ -17,6 +18,15 @@ pub enum TargetState { Secured, } +impl fmt::Display for TargetState { + fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { + match self { + TargetState::Unsecured => "Unsecured".fmt(f), + TargetState::Secured => "Secured".fmt(f), + } + } +} + /// Represents the state the client tunnel is in. #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)] #[serde(rename_all = "snake_case")] |
