diff options
| author | Jonatan Rhodin <jonatan.rhodin@mullvad.net> | 2024-12-02 11:32:40 +0100 |
|---|---|---|
| committer | Jonatan Rhodin <jonatan.rhodin@mullvad.net> | 2024-12-02 11:32:40 +0100 |
| commit | db019b768532baecea3f32a0bb5679c8b551074b (patch) | |
| tree | b4aa1823a0f1baf4d401fee8154108083e1dec90 | |
| parent | 2e022babf06b47e100d0cf98a79751d0088d689e (diff) | |
| parent | 298f810359d9d1d5ecef5e5a751b958adc3e8022 (diff) | |
| download | mullvadvpn-db019b768532baecea3f32a0bb5679c8b551074b.tar.xz mullvadvpn-db019b768532baecea3f32a0bb5679c8b551074b.zip | |
Merge branch 'entering-blocked-state-when-connection-fails-droid-1606'
| -rw-r--r-- | talpid-wireguard/src/lib.rs | 9 | ||||
| -rw-r--r-- | talpid-wireguard/src/wireguard_go/mod.rs | 9 |
2 files changed, 6 insertions, 12 deletions
diff --git a/talpid-wireguard/src/lib.rs b/talpid-wireguard/src/lib.rs index 7c93b39f18..06726f9c69 100644 --- a/talpid-wireguard/src/lib.rs +++ b/talpid-wireguard/src/lib.rs @@ -1087,15 +1087,6 @@ pub enum TunnelError { #[cfg(daita)] #[error("Failed to start DAITA - tunnel implemenation does not support DAITA")] DaitaNotSupported, - - /// [connectivity] error. - #[error(transparent)] - Connectivity(#[from] Box<connectivity::Error>), - - /// Tunnel seemingly does not serve any traffic - #[cfg(target_os = "android")] - #[error("Tunnel seemingly does not serve any traffic")] - TunnelUp, } #[cfg(target_os = "linux")] diff --git a/talpid-wireguard/src/wireguard_go/mod.rs b/talpid-wireguard/src/wireguard_go/mod.rs index d283758f3b..e2072c291e 100644 --- a/talpid-wireguard/src/wireguard_go/mod.rs +++ b/talpid-wireguard/src/wireguard_go/mod.rs @@ -1,5 +1,7 @@ #[cfg(target_os = "android")] use super::config; +#[cfg(target_os = "android")] +use super::Error; use super::{ stats::{Stats, StatsMap}, Config, Tunnel, TunnelError, @@ -434,14 +436,15 @@ impl WgGoTunnel { &self, checker: &mut connectivity::Check<connectivity::Cancellable>, ) -> Result<()> { - let connectivity_err = |e| TunnelError::Connectivity(Box::new(e)); let connection_established = checker .establish_connectivity(self) - .map_err(connectivity_err)?; + .map_err(|e| TunnelError::RecoverableStartWireguardError(Box::new(e)))?; // Timed out if !connection_established { - return Err(TunnelError::TunnelUp); + return Err(TunnelError::RecoverableStartWireguardError(Box::new( + Error::TimeoutError, + ))); } Ok(()) } |
