summaryrefslogtreecommitdiffhomepage
path: root/ios/PacketTunnel
diff options
context:
space:
mode:
authormojganii <mojgan.jelodar@codic.se>2024-08-14 14:03:23 +0200
committerBug Magnet <marco.nikic@mullvad.net>2024-08-15 09:38:02 +0200
commitbdfd39740fdbf9c5462967c23a03e29aeece41d2 (patch)
tree27ea3bacb29034e424ee7d865e1b3a67c252b3b7 /ios/PacketTunnel
parent1283882cf051a68fe28b26ebbce93ae1bf0895b6 (diff)
downloadmullvadvpn-bdfd39740fdbf9c5462967c23a03e29aeece41d2.tar.xz
mullvadvpn-bdfd39740fdbf9c5462967c23a03e29aeece41d2.zip
Add DAITA into TunnelSettings
Diffstat (limited to 'ios/PacketTunnel')
-rw-r--r--ios/PacketTunnel/PacketTunnelProvider/PacketTunnelProvider.swift15
-rw-r--r--ios/PacketTunnel/PacketTunnelProvider/SettingsReader.swift22
2 files changed, 7 insertions, 30 deletions
diff --git a/ios/PacketTunnel/PacketTunnelProvider/PacketTunnelProvider.swift b/ios/PacketTunnel/PacketTunnelProvider/PacketTunnelProvider.swift
index c6b7a7e8cd..f40d00d4f2 100644
--- a/ios/PacketTunnel/PacketTunnelProvider/PacketTunnelProvider.swift
+++ b/ios/PacketTunnel/PacketTunnelProvider/PacketTunnelProvider.swift
@@ -27,10 +27,9 @@ class PacketTunnelProvider: NEPacketTunnelProvider {
private var adapter: WgAdapter!
private var relaySelector: RelaySelectorWrapper!
private var postQuantumKeyExchangingPipeline: PostQuantumKeyExchangingPipeline!
+ private let tunnelSettingsUpdater: SettingsUpdater!
- private let multihopStateListener = MultihopStateListener()
- private let multihopUpdater: MultihopUpdater
- private let constraintsUpdater = RelayConstraintsUpdater()
+ private let tunnelSettingsListener = TunnelSettingsListener()
private lazy var postQuantumReceiver = {
PostQuantumKeyReceiver(tunnelProvider: self)
}()
@@ -48,7 +47,7 @@ class PacketTunnelProvider: NEPacketTunnelProvider {
relayCache: RelayCache(cacheDirectory: containerURL),
ipOverrideRepository: IPOverrideRepository()
)
- multihopUpdater = MultihopUpdater(listener: multihopStateListener)
+ tunnelSettingsUpdater = SettingsUpdater(listener: tunnelSettingsListener)
super.init()
@@ -77,7 +76,7 @@ class PacketTunnelProvider: NEPacketTunnelProvider {
deviceChecker = DeviceChecker(accountsProxy: accountsProxy, devicesProxy: devicesProxy)
relaySelector = RelaySelectorWrapper(
relayCache: ipOverrideWrapper,
- multihopUpdater: multihopUpdater
+ tunnelSettingsUpdater: tunnelSettingsUpdater
)
actor = PacketTunnelActor(
@@ -89,8 +88,7 @@ class PacketTunnelProvider: NEPacketTunnelProvider {
relaySelector: relaySelector,
settingsReader: TunnelSettingsManager(settingsReader: SettingsReader()) { [weak self] settings in
guard let self = self else { return }
- multihopStateListener.onNewMultihop?(settings.multihopState)
- constraintsUpdater.onNewConstraints?(settings.relayConstraints)
+ tunnelSettingsListener.onNewSettings?(settings.tunnelSettings)
},
protocolObfuscator: ProtocolObfuscator<UDPOverTCPObfuscator>()
)
@@ -186,8 +184,7 @@ class PacketTunnelProvider: NEPacketTunnelProvider {
shadowsocksLoader: ShadowsocksLoader(
cache: shadowsocksCache,
relaySelector: shadowsocksRelaySelector,
- constraintsUpdater: constraintsUpdater,
- multihopUpdater: multihopUpdater
+ settingsUpdater: tunnelSettingsUpdater
)
)
diff --git a/ios/PacketTunnel/PacketTunnelProvider/SettingsReader.swift b/ios/PacketTunnel/PacketTunnelProvider/SettingsReader.swift
index 2de052e1bd..1c96fa3e93 100644
--- a/ios/PacketTunnel/PacketTunnelProvider/SettingsReader.swift
+++ b/ios/PacketTunnel/PacketTunnelProvider/SettingsReader.swift
@@ -19,11 +19,7 @@ struct SettingsReader: SettingsReaderProtocol {
return Settings(
privateKey: deviceData.wgKeyData.privateKey,
interfaceAddresses: [deviceData.ipv4Address, deviceData.ipv6Address],
- relayConstraints: settings.relayConstraints,
- dnsServers: settings.dnsSettings.selectedDNSServers,
- obfuscation: settings.wireGuardObfuscation,
- quantumResistance: settings.tunnelQuantumResistance,
- multihopState: settings.tunnelMultihopState
+ tunnelSettings: settings
)
}
}
@@ -47,22 +43,6 @@ private extension DeviceState {
}
}
-private extension DNSSettings {
- /**
- Converts `DNSSettings` to `SelectedDNSServers` structure.
- */
- var selectedDNSServers: SelectedDNSServers {
- if effectiveEnableCustomDNS {
- let addresses = Array(customDNSDomains.prefix(DNSSettings.maxAllowedCustomDNSDomains))
- return .custom(addresses)
- } else if let serverAddress = blockingOptions.serverAddress {
- return .blocking(serverAddress)
- } else {
- return .gateway
- }
- }
-}
-
/// Error returned when device state is either revoked or logged out.
public enum ReadDeviceDataError: LocalizedError {
case loggedOut, revoked