diff options
| -rw-r--r-- | mullvad-daemon/src/lib.rs | 3 | ||||
| -rw-r--r-- | mullvad-types/src/auth_failed.rs | 12 |
2 files changed, 14 insertions, 1 deletions
diff --git a/mullvad-daemon/src/lib.rs b/mullvad-daemon/src/lib.rs index c6875d3401..3ea3cdbd27 100644 --- a/mullvad-daemon/src/lib.rs +++ b/mullvad-daemon/src/lib.rs @@ -41,6 +41,7 @@ use mullvad_relay_selector::{ }; use mullvad_types::{ account::{AccountData, AccountToken, VoucherSubmission}, + auth_failed::AuthFailed, device::{Device, DeviceEvent, DeviceEventCause, DeviceId, DeviceState, RemoveDeviceEvent}, location::GeoIpLocation, relay_constraints::{BridgeSettings, BridgeState, ObfuscationSettings, RelaySettingsUpdate}, @@ -1099,7 +1100,7 @@ where } else if self.get_target_tunnel_type() == Some(TunnelType::Wireguard) { log::debug!("Entering blocking state since the account is out of time"); self.send_tunnel_command(TunnelCommand::Block(ErrorStateCause::AuthFailed( - None, + Some(AuthFailed::ExpiredAccount.as_str().to_string()), ))) } } diff --git a/mullvad-types/src/auth_failed.rs b/mullvad-types/src/auth_failed.rs index 43b991da72..795bbc24e3 100644 --- a/mullvad-types/src/auth_failed.rs +++ b/mullvad-types/src/auth_failed.rs @@ -35,6 +35,18 @@ impl<'a> From<&'a str> for AuthFailed { } } +impl AuthFailed { + pub fn as_str(&self) -> &'static str { + use AuthFailed::*; + match self { + InvalidAccount => "[INVALID_ACCOUNT]", + ExpiredAccount => "[EXPIRED_ACCOUNT]", + TooManyConnections => "[TOO_MANY_CONNECTIONS]", + Unknown => "[Unknown]", + } + } +} + #[derive(Debug)] pub struct UnexpectedErrorStateCause(()); |
