summaryrefslogtreecommitdiffhomepage
path: root/android/lib/model/src
diff options
context:
space:
mode:
authorJonatan Rhodin <jonatan.rhodin@mullvad.net>2024-11-24 23:18:04 +0100
committerJonatan Rhodin <jonatan.rhodin@mullvad.net>2024-11-27 08:50:54 +0100
commita91a791eed3d4e041357622c3ff509601677eec2 (patch)
tree6c0e7381edea81f2bba4db88aa25eabd46eb9780 /android/lib/model/src
parent56e46c5cf783d41937e4eb2531a4d2e287381ee6 (diff)
downloadmullvadvpn-a91a791eed3d4e041357622c3ff509601677eec2.tar.xz
mullvadvpn-a91a791eed3d4e041357622c3ff509601677eec2.zip
Implement multihop
Diffstat (limited to 'android/lib/model/src')
-rw-r--r--android/lib/model/src/main/kotlin/net/mullvad/mullvadvpn/lib/model/FeatureIndicator.kt2
-rw-r--r--android/lib/model/src/main/kotlin/net/mullvad/mullvadvpn/lib/model/RelayItemSelection.kt12
-rw-r--r--android/lib/model/src/main/kotlin/net/mullvad/mullvadvpn/lib/model/WireguardConstraints.kt2
3 files changed, 14 insertions, 2 deletions
diff --git a/android/lib/model/src/main/kotlin/net/mullvad/mullvadvpn/lib/model/FeatureIndicator.kt b/android/lib/model/src/main/kotlin/net/mullvad/mullvadvpn/lib/model/FeatureIndicator.kt
index 3c8df824f4..0da5704b4b 100644
--- a/android/lib/model/src/main/kotlin/net/mullvad/mullvadvpn/lib/model/FeatureIndicator.kt
+++ b/android/lib/model/src/main/kotlin/net/mullvad/mullvadvpn/lib/model/FeatureIndicator.kt
@@ -4,7 +4,7 @@ package net.mullvad.mullvadvpn.lib.model
enum class FeatureIndicator {
DAITA,
QUANTUM_RESISTANCE,
- // MULTIHOP,
+ MULTIHOP,
SPLIT_TUNNELING,
UDP_2_TCP,
SHADOWSOCKS,
diff --git a/android/lib/model/src/main/kotlin/net/mullvad/mullvadvpn/lib/model/RelayItemSelection.kt b/android/lib/model/src/main/kotlin/net/mullvad/mullvadvpn/lib/model/RelayItemSelection.kt
new file mode 100644
index 0000000000..c4c78ffe4c
--- /dev/null
+++ b/android/lib/model/src/main/kotlin/net/mullvad/mullvadvpn/lib/model/RelayItemSelection.kt
@@ -0,0 +1,12 @@
+package net.mullvad.mullvadvpn.lib.model
+
+sealed interface RelayItemSelection {
+ val exitLocation: Constraint<RelayItemId>
+
+ data class Single(override val exitLocation: Constraint<RelayItemId>) : RelayItemSelection
+
+ data class Multiple(
+ val entryLocation: Constraint<RelayItemId>,
+ override val exitLocation: Constraint<RelayItemId>,
+ ) : RelayItemSelection
+}
diff --git a/android/lib/model/src/main/kotlin/net/mullvad/mullvadvpn/lib/model/WireguardConstraints.kt b/android/lib/model/src/main/kotlin/net/mullvad/mullvadvpn/lib/model/WireguardConstraints.kt
index 7af0144cf4..dcc3a957df 100644
--- a/android/lib/model/src/main/kotlin/net/mullvad/mullvadvpn/lib/model/WireguardConstraints.kt
+++ b/android/lib/model/src/main/kotlin/net/mullvad/mullvadvpn/lib/model/WireguardConstraints.kt
@@ -5,7 +5,7 @@ import arrow.optics.optics
@optics
data class WireguardConstraints(
val port: Constraint<Port>,
- val useMultihop: Boolean,
+ val isMultihopEnabled: Boolean,
val entryLocation: Constraint<RelayItemId>,
) {
companion object