summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorJanito Vaqueiro Ferreira Filho <janito@mullvad.net>2020-10-26 20:46:00 +0000
committerJanito Vaqueiro Ferreira Filho <janito@mullvad.net>2020-12-04 13:18:17 +0000
commite2a5f71217b2d14f236ab0a0abd69547eaad30aa (patch)
tree17f802fdf443e9896c6bb8fcea3969340039b1ba
parent5329db68bb9f3a72bf54bab54bd2904eeeef4ac9 (diff)
downloadmullvadvpn-e2a5f71217b2d14f236ab0a0abd69547eaad30aa.tar.xz
mullvadvpn-e2a5f71217b2d14f236ab0a0abd69547eaad30aa.zip
Derive `IntoJava` for `DnsOptions`
-rw-r--r--android/src/main/kotlin/net/mullvad/mullvadvpn/model/DnsOptions.kt6
-rw-r--r--mullvad-jni/src/classes.rs1
-rw-r--r--mullvad-types/src/settings/mod.rs5
3 files changed, 9 insertions, 3 deletions
diff --git a/android/src/main/kotlin/net/mullvad/mullvadvpn/model/DnsOptions.kt b/android/src/main/kotlin/net/mullvad/mullvadvpn/model/DnsOptions.kt
new file mode 100644
index 0000000000..e4d7b75481
--- /dev/null
+++ b/android/src/main/kotlin/net/mullvad/mullvadvpn/model/DnsOptions.kt
@@ -0,0 +1,6 @@
+package net.mullvad.mullvadvpn.model
+
+import java.net.InetAddress
+import java.util.ArrayList
+
+data class DnsOptions(val custom: Boolean, val addresses: ArrayList<InetAddress>)
diff --git a/mullvad-jni/src/classes.rs b/mullvad-jni/src/classes.rs
index 068e75f63c..d402d1a8a3 100644
--- a/mullvad-jni/src/classes.rs
+++ b/mullvad-jni/src/classes.rs
@@ -7,6 +7,7 @@ pub const CLASSES: &[&str] = &[
"net/mullvad/mullvadvpn/model/AppVersionInfo",
"net/mullvad/mullvadvpn/model/Constraint$Any",
"net/mullvad/mullvadvpn/model/Constraint$Only",
+ "net/mullvad/mullvadvpn/model/DnsOptions",
"net/mullvad/mullvadvpn/model/GeoIpLocation",
"net/mullvad/mullvadvpn/model/GetAccountDataResult$Ok",
"net/mullvad/mullvadvpn/model/GetAccountDataResult$InvalidAccount",
diff --git a/mullvad-types/src/settings/mod.rs b/mullvad-types/src/settings/mod.rs
index 4f09fa480b..e16332159a 100644
--- a/mullvad-types/src/settings/mod.rs
+++ b/mullvad-types/src/settings/mod.rs
@@ -7,7 +7,6 @@ use jnix::IntoJava;
use log::{debug, info};
use serde::{Deserialize, Serialize};
use serde_json;
-#[cfg(not(target_os = "android"))]
use std::net::IpAddr;
use talpid_types::net::{openvpn, wireguard, GenericTunnelOptions};
@@ -172,9 +171,10 @@ pub struct TunnelOptions {
}
/// Custom DNS config
-#[cfg(not(target_os = "android"))]
#[serde(default)]
#[derive(Debug, Default, Clone, PartialEq, Eq, Serialize, Deserialize, Hash)]
+#[cfg_attr(target_os = "android", derive(IntoJava))]
+#[cfg_attr(target_os = "android", jnix(package = "net.mullvad.mullvadvpn.model"))]
pub struct DnsOptions {
/// Whether to use the addresses in `custom_dns`.
pub custom: bool,
@@ -194,7 +194,6 @@ impl Default for TunnelOptions {
// Enable IPv6 be default on Android
enable_ipv6: cfg!(target_os = "android"),
},
- #[cfg(not(target_os = "android"))]
dns_options: DnsOptions::default(),
}
}