diff options
| -rw-r--r-- | talpid-core/src/tunnel_state_machine/connecting_state.rs | 33 |
1 files changed, 13 insertions, 20 deletions
diff --git a/talpid-core/src/tunnel_state_machine/connecting_state.rs b/talpid-core/src/tunnel_state_machine/connecting_state.rs index 1c80dfe31a..1dc057a7e5 100644 --- a/talpid-core/src/tunnel_state_machine/connecting_state.rs +++ b/talpid-core/src/tunnel_state_machine/connecting_state.rs @@ -68,21 +68,22 @@ impl ConnectingState { } fn start_tunnel( - parameters: &TunnelParameters, + parameters: TunnelParameters, log_dir: &Option<PathBuf>, resource_dir: &Path, - ) -> Result<( - mpsc::UnboundedReceiver<TunnelEvent>, - oneshot::Receiver<()>, - CloseHandle, - )> { + ) -> Result<Self> { let (event_tx, event_rx) = mpsc::unbounded(); let monitor = Self::spawn_tunnel_monitor(¶meters, log_dir, resource_dir, event_tx.wait())?; let close_handle = monitor.close_handle(); let tunnel_close_event = Self::spawn_tunnel_monitor_wait_thread(monitor); - Ok((event_rx, tunnel_close_event, close_handle)) + Ok(ConnectingState { + tunnel_events: event_rx, + tunnel_parameters: parameters, + tunnel_close_event, + close_handle, + }) } fn spawn_tunnel_monitor( @@ -307,22 +308,14 @@ impl TunnelState for ConnectingState { } match Self::start_tunnel( - ¶meters, + parameters, &shared_values.log_dir, &shared_values.resource_dir, ) { - Ok((tunnel_events, tunnel_close_event, close_handle)) => { - let connecting_state = ConnectingState { - tunnel_events, - tunnel_parameters: parameters, - tunnel_close_event, - close_handle, - }; - ( - TunnelStateWrapper::from(connecting_state), - TunnelStateTransition::Connecting, - ) - } + Ok(connecting_state) => ( + TunnelStateWrapper::from(connecting_state), + TunnelStateTransition::Connecting, + ), Err(error) => { let block_reason = match *error.kind() { ErrorKind::TunnelMonitorError(tunnel::ErrorKind::EnableIpv6Error) => { |
