summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorJanito Vaqueiro Ferreira Filho <janito@mullvad.net>2019-05-30 19:34:51 +0000
committerJanito Vaqueiro Ferreira Filho <janito@mullvad.net>2019-06-14 11:52:38 +0000
commit388658e17bb4a932d09b7eca53eb5d5bd3f9cde8 (patch)
tree087b9a2f41e6e80a2d1f87899bd6d677305bc291
parentfb92cc4691e6b7167b359e3a5788ed2f78567c16 (diff)
downloadmullvadvpn-388658e17bb4a932d09b7eca53eb5d5bd3f9cde8.tar.xz
mullvadvpn-388658e17bb4a932d09b7eca53eb5d5bd3f9cde8.zip
Add flag to `Relay` if it has Wireguard tunnels
-rw-r--r--android/src/main/kotlin/net/mullvad/mullvadvpn/model/Relay.kt2
-rw-r--r--mullvad-jni/src/into_java.rs10
2 files changed, 8 insertions, 4 deletions
diff --git a/android/src/main/kotlin/net/mullvad/mullvadvpn/model/Relay.kt b/android/src/main/kotlin/net/mullvad/mullvadvpn/model/Relay.kt
index 85c062c4c6..4173af782b 100644
--- a/android/src/main/kotlin/net/mullvad/mullvadvpn/model/Relay.kt
+++ b/android/src/main/kotlin/net/mullvad/mullvadvpn/model/Relay.kt
@@ -1,4 +1,4 @@
package net.mullvad.mullvadvpn.model
-data class Relay(val hostname: String) {
+data class Relay(val hostname: String, val hasWireguardTunnels: Boolean) {
}
diff --git a/mullvad-jni/src/into_java.rs b/mullvad-jni/src/into_java.rs
index c49ec4a2c8..470424edc0 100644
--- a/mullvad-jni/src/into_java.rs
+++ b/mullvad-jni/src/into_java.rs
@@ -3,7 +3,7 @@ use ipnetwork::IpNetwork;
use jni::{
objects::{JList, JObject, JString, JValue},
signature::JavaType,
- sys::{jint, jshort, jsize},
+ sys::{jboolean, jint, jshort, jsize},
JNIEnv,
};
use mullvad_types::{
@@ -304,9 +304,13 @@ impl<'env> IntoJava<'env> for Relay {
fn into_java(self, env: &JNIEnv<'env>) -> Self::JavaType {
let class = get_class("net/mullvad/mullvadvpn/model/Relay");
let hostname = env.auto_local(JObject::from(self.hostname.into_java(env)));
- let parameters = [JValue::Object(hostname.as_obj())];
+ let has_wireguard_tunnels = (!self.tunnels.wireguard.is_empty()) as jboolean;
+ let parameters = [
+ JValue::Object(hostname.as_obj()),
+ JValue::Bool(has_wireguard_tunnels),
+ ];
- env.new_object(&class, "(Ljava/lang/String;)V", &parameters)
+ env.new_object(&class, "(Ljava/lang/String;Z)V", &parameters)
.expect("Failed to create Relay Java object")
}
}