diff options
| -rw-r--r-- | mullvad-jni/src/daemon_interface.rs | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/mullvad-jni/src/daemon_interface.rs b/mullvad-jni/src/daemon_interface.rs index 328d0c9093..c2d353f0eb 100644 --- a/mullvad-jni/src/daemon_interface.rs +++ b/mullvad-jni/src/daemon_interface.rs @@ -2,7 +2,7 @@ use futures::{sync::oneshot, Future}; use mullvad_daemon::{DaemonCommandSender, ManagementCommand}; use mullvad_types::{ account::AccountData, relay_constraints::RelaySettingsUpdate, relay_list::RelayList, - settings::Settings, + settings::Settings, states::TargetState, }; #[derive(Debug, err_derive::Error)] @@ -37,6 +37,16 @@ impl DaemonInterface { self.command_sender = Some(sender); } + pub fn connect(&self) -> Result<()> { + let (tx, rx) = oneshot::channel(); + + self.send_command(ManagementCommand::SetTargetState(tx, TargetState::Secured))?; + + rx.wait().map_err(|_| Error::NoResponse)?.unwrap(); + + Ok(()) + } + pub fn get_account_data(&self, account_token: String) -> Result<AccountData> { let (tx, rx) = oneshot::channel(); |
