diff options
| author | Linus Färnstrand <linus@mullvad.net> | 2018-11-16 10:34:44 +0100 |
|---|---|---|
| committer | Linus Färnstrand <linus@mullvad.net> | 2018-11-16 10:34:44 +0100 |
| commit | 62514459eaec687b5500f04d3444d55c0d191c7f (patch) | |
| tree | 3970500eee1baaa331d63296ba935fed97ef1e1f | |
| parent | 74188a87413f4d99c48e05b808a1483d11c28bbd (diff) | |
| parent | 56a9f3966b9cbe55ddf19ee487aa6a29465926ed (diff) | |
| download | mullvadvpn-62514459eaec687b5500f04d3444d55c0d191c7f.tar.xz mullvadvpn-62514459eaec687b5500f04d3444d55c0d191c7f.zip | |
Merge branch 'fix-warnings'
| -rw-r--r-- | talpid-core/src/offline/dummy.rs | 6 | ||||
| -rw-r--r-- | talpid-core/src/offline/macos.rs | 6 | ||||
| -rw-r--r-- | talpid-core/src/offline/mod.rs | 11 | ||||
| -rw-r--r-- | talpid-core/src/offline/windows.rs | 4 | ||||
| -rw-r--r-- | talpid-ipc/tests/ipc-client-server.rs | 7 |
5 files changed, 24 insertions, 10 deletions
diff --git a/talpid-core/src/offline/dummy.rs b/talpid-core/src/offline/dummy.rs index c654b846b8..7312f4780c 100644 --- a/talpid-core/src/offline/dummy.rs +++ b/talpid-core/src/offline/dummy.rs @@ -3,8 +3,10 @@ use tunnel_state_machine::TunnelCommand; error_chain!{} -pub fn spawn_monitor(_sender: UnboundedSender<TunnelCommand>) -> Result<()> { - Ok(()) +pub struct MonitorHandle; + +pub fn spawn_monitor(_sender: UnboundedSender<TunnelCommand>) -> Result<MonitorHandle> { + Ok(MonitorHandle) } pub fn is_offline() -> bool { diff --git a/talpid-core/src/offline/macos.rs b/talpid-core/src/offline/macos.rs index 12362eb16d..e55fa376d3 100644 --- a/talpid-core/src/offline/macos.rs +++ b/talpid-core/src/offline/macos.rs @@ -21,7 +21,9 @@ error_chain! { } } -pub fn spawn_monitor(sender: UnboundedSender<TunnelCommand>) -> Result<()> { +pub struct MonitorHandle; + +pub fn spawn_monitor(sender: UnboundedSender<TunnelCommand>) -> Result<MonitorHandle> { let (result_tx, result_rx) = mpsc::channel(); thread::spawn(move || match create_dynamic_store(sender) { Ok(store) => { @@ -31,7 +33,7 @@ pub fn spawn_monitor(sender: UnboundedSender<TunnelCommand>) -> Result<()> { } Err(e) => result_tx.send(Err(e)).unwrap(), }); - result_rx.recv().unwrap() + result_rx.recv().unwrap().map(|_| MonitorHandle) } pub fn is_offline() -> bool { diff --git a/talpid-core/src/offline/mod.rs b/talpid-core/src/offline/mod.rs index 6cbbf04e9e..38ebc3fb1e 100644 --- a/talpid-core/src/offline/mod.rs +++ b/talpid-core/src/offline/mod.rs @@ -1,3 +1,6 @@ +use futures::sync::mpsc::UnboundedSender; +use tunnel_state_machine::TunnelCommand; + #[cfg(target_os = "macos")] #[path = "macos.rs"] mod imp; @@ -10,4 +13,10 @@ mod imp; #[path = "dummy.rs"] mod imp; -pub use self::imp::{is_offline, spawn_monitor}; +pub use self::imp::is_offline; + +pub struct MonitorHandle(imp::MonitorHandle); + +pub fn spawn_monitor(sender: UnboundedSender<TunnelCommand>) -> Result<MonitorHandle, imp::Error> { + Ok(MonitorHandle(imp::spawn_monitor(sender)?)) +} diff --git a/talpid-core/src/offline/windows.rs b/talpid-core/src/offline/windows.rs index 1258f1ba11..88607cd47b 100644 --- a/talpid-core/src/offline/windows.rs +++ b/talpid-core/src/offline/windows.rs @@ -162,7 +162,9 @@ impl Drop for BroadcastListener { } } -pub fn spawn_monitor(sender: UnboundedSender<TunnelCommand>) -> Result<BroadcastListener> { +pub type MonitorHandle = BroadcastListener; + +pub fn spawn_monitor(sender: UnboundedSender<TunnelCommand>) -> Result<MonitorHandle> { let listener = BroadcastListener::start(move |message: UINT, wparam: WPARAM, _lparam: LPARAM| { if message == WM_POWERBROADCAST { diff --git a/talpid-ipc/tests/ipc-client-server.rs b/talpid-ipc/tests/ipc-client-server.rs index 9d2aebd19f..254671962c 100644 --- a/talpid-ipc/tests/ipc-client-server.rs +++ b/talpid-ipc/tests/ipc-client-server.rs @@ -1,3 +1,6 @@ +// TODO fix these tests on Windows +#![cfg(not(windows))] + extern crate assert_matches; extern crate env_logger; extern crate jsonrpc_client_core; @@ -38,8 +41,6 @@ impl TestApi for ApiImpl { } } -// TODO fix this test on Windows -#[cfg(not(windows))] #[test] fn can_call_rpcs_on_server() { env_logger::init(); @@ -56,8 +57,6 @@ fn can_call_rpcs_on_server() { server.close_handle().close(); } -// TODO fix this test on Windows -#[cfg(not(windows))] #[test] #[should_panic] fn ipc_client_invalid_url() { |
