summaryrefslogtreecommitdiffhomepage
path: root/talpid-core/src
diff options
context:
space:
mode:
authorJanito Vaqueiro Ferreira Filho <janito@mullvad.net>2019-11-21 15:15:02 +0000
committerJanito Vaqueiro Ferreira Filho <janito@mullvad.net>2019-11-22 15:16:54 +0000
commit7d97d483fdaf5165fbe923f82ebafd6b8ebd084c (patch)
tree8a10005a7ae7284989e765c0f511a933e92c21f3 /talpid-core/src
parent5166c453faa029b3a960cc27b56b399d3b9e37fd (diff)
downloadmullvadvpn-7d97d483fdaf5165fbe923f82ebafd6b8ebd084c.tar.xz
mullvadvpn-7d97d483fdaf5165fbe923f82ebafd6b8ebd084c.zip
Derive `IntoJava` for `TunConfig`
Diffstat (limited to 'talpid-core/src')
-rw-r--r--talpid-core/src/tunnel/tun_provider/mod.rs10
1 files changed, 10 insertions, 0 deletions
diff --git a/talpid-core/src/tunnel/tun_provider/mod.rs b/talpid-core/src/tunnel/tun_provider/mod.rs
index 68b688aa74..c6701ceac9 100644
--- a/talpid-core/src/tunnel/tun_provider/mod.rs
+++ b/talpid-core/src/tunnel/tun_provider/mod.rs
@@ -73,6 +73,11 @@ pub trait TunProvider: Send + 'static {
/// Configuration for creating a tunnel device.
#[derive(Clone, Debug, Eq, PartialEq)]
+#[cfg_attr(target_os = "android", derive(IntoJava))]
+#[cfg_attr(
+ target_os = "android",
+ jnix(package = "net.mullvad.talpid.tun_provider")
+)]
pub struct TunConfig {
/// IP addresses for the tunnel interface.
pub addresses: Vec<IpAddr>,
@@ -81,9 +86,14 @@ pub struct TunConfig {
pub dns_servers: Vec<IpAddr>,
/// Routes to configure for the tunnel.
+ #[cfg_attr(
+ target_os = "android",
+ jnix(map = "|networks| networks.into_iter().map(InetNetwork::from).collect::<Vec<_>>()")
+ )]
pub routes: Vec<IpNetwork>,
/// Maximum Transmission Unit in the tunnel.
+ #[cfg_attr(target_os = "android", jnix(map = "|mtu| mtu as i32"))]
pub mtu: u16,
}