summaryrefslogtreecommitdiffhomepage
path: root/mullvad-cli/src
diff options
context:
space:
mode:
authorMarkus Pettersson <markus.pettersson@mullvad.net>2025-10-16 17:59:59 +0200
committerMarkus Pettersson <markus.pettersson@mullvad.net>2025-10-23 17:10:44 +0200
commit158975a5457da513de88d0b12f3adb66ddd666e7 (patch)
treea0f1324eed731acdc98755723d761d554f21a576 /mullvad-cli/src
parent9a7dc2e817881a8c8bd827439e3ecc62ec012b30 (diff)
downloadmullvadvpn-158975a5457da513de88d0b12f3adb66ddd666e7.tar.xz
mullvadvpn-158975a5457da513de88d0b12f3adb66ddd666e7.zip
Change `mullvad reconnect` warns the user when issued in unsecured state
Exit with non-zero exit code as well to make the command a bit more script-friendly.
Diffstat (limited to 'mullvad-cli/src')
-rw-r--r--mullvad-cli/src/cmds/tunnel_state.rs10
1 files changed, 6 insertions, 4 deletions
diff --git a/mullvad-cli/src/cmds/tunnel_state.rs b/mullvad-cli/src/cmds/tunnel_state.rs
index 2db5765f54..11c57aa324 100644
--- a/mullvad-cli/src/cmds/tunnel_state.rs
+++ b/mullvad-cli/src/cmds/tunnel_state.rs
@@ -1,5 +1,5 @@
use crate::format;
-use anyhow::{Result, anyhow};
+use anyhow::{Result, anyhow, bail};
use futures::{Stream, StreamExt};
use mullvad_management_interface::{MullvadProxyClient, client::DaemonEvent};
use mullvad_types::{device::DeviceState, states::TunnelState};
@@ -60,9 +60,11 @@ pub async fn reconnect(wait: bool) -> Result<()> {
None
};
- if rpc.reconnect_tunnel().await?
- && let Some(receiver) = listener
- {
+ let reconnecting = rpc.reconnect_tunnel().await?;
+ if !reconnecting {
+ bail!("Not reconnecting due to being in disconnected state")
+ }
+ if let Some(receiver) = listener {
wait_for_tunnel_state(receiver, |state| match state {
TunnelState::Connected { .. } => Ok(true),
TunnelState::Error(_) => Err(anyhow!("Failed to reconnect")),