diff options
| author | Janito Vaqueiro Ferreira Filho <janito@mullvad.net> | 2020-11-21 22:55:05 +0000 |
|---|---|---|
| committer | Janito Vaqueiro Ferreira Filho <janito@mullvad.net> | 2020-11-23 13:05:40 +0000 |
| commit | 66631ae9cfdaa8e6faba3abb3f3a40a18310fe04 (patch) | |
| tree | 9371d4e6948e8aa8ca5a442f6e0147163056c961 /talpid-core | |
| parent | 1e514b22e961f8f29941fdd8188e0874cc9b8e11 (diff) | |
| download | mullvadvpn-66631ae9cfdaa8e6faba3abb3f3a40a18310fe04.tar.xz mullvadvpn-66631ae9cfdaa8e6faba3abb3f3a40a18310fe04.zip | |
Return boolean to indicate if tunnel is up
Allows the tunnel state machine to determine if it is blocking
connections when entering the error state.
Diffstat (limited to 'talpid-core')
| -rw-r--r-- | talpid-core/src/tunnel/tun_provider/android/mod.rs | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/talpid-core/src/tunnel/tun_provider/android/mod.rs b/talpid-core/src/tunnel/tun_provider/android/mod.rs index e4e8f4fbac..c744ca96fa 100644 --- a/talpid-core/src/tunnel/tun_provider/android/mod.rs +++ b/talpid-core/src/tunnel/tun_provider/android/mod.rs @@ -7,6 +7,7 @@ use jnix::{ jni::{ objects::{GlobalRef, JValue}, signature::{JavaType, Primitive}, + sys::JNI_FALSE, JavaVM, }, IntoJava, JnixEnv, @@ -133,13 +134,14 @@ impl AndroidTunProvider { pub fn create_tun_if_closed(&mut self) -> Result<(), Error> { let result = self.call_method( "createTunIfClosed", - "()V", - JavaType::Primitive(Primitive::Void), + "()Z", + JavaType::Primitive(Primitive::Boolean), &[], )?; match result { - JValue::Void => Ok(()), + JValue::Bool(JNI_FALSE) => Err(Error::TunnelDeviceError), + JValue::Bool(_) => Ok(()), value => Err(Error::InvalidMethodResult( "createTunIfClosed", format!("{:?}", value), |
