Skip to content

Commit 5552329

Browse files
committed
Merge branch 'remove-automatic-quantum-resistant-tunnel-option-ios-1361'
2 parents 0dec20d + 467622f commit 5552329

File tree

15 files changed

+101
-33
lines changed

15 files changed

+101
-33
lines changed

ios/CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@ Line wrap the file at 100 chars. Th
3232
- Show disabled servers in location view.
3333
- Add ability which types of local notifications are delivered.
3434
- Remove invalid Shadowsocks ciphers.
35+
- Remove Automatic quantum-resistant tunnel option
3536

3637
[TunnelCrack]: https://tunnelcrack.mathyvanhoef.com/
3738

ios/MullvadSettings/QuantumResistanceSettings.swift

Lines changed: 37 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,14 +9,49 @@
99
import Foundation
1010

1111
public enum TunnelQuantumResistance: Codable, Sendable {
12-
case automatic
1312
case on
1413
case off
14+
15+
private enum CodingKeys: String, CodingKey {
16+
case automatic, on, off
17+
}
18+
19+
public init(from decoder: Decoder) throws {
20+
let container = try decoder.container(keyedBy: CodingKeys.self)
21+
if container.contains(.automatic) {
22+
self = .on
23+
return
24+
}
25+
26+
if container.contains(.on) {
27+
self = .on
28+
return
29+
}
30+
31+
if container.contains(.off) {
32+
self = .off
33+
return
34+
}
35+
36+
self = .on
37+
}
38+
39+
public func encode(to encoder: Encoder) throws {
40+
var container = encoder.container(keyedBy: CodingKeys.self)
41+
42+
switch self {
43+
case .on:
44+
try container.encode([String: String](), forKey: .on)
45+
46+
case .off:
47+
try container.encode([String: String](), forKey: .off)
48+
}
49+
}
1550
}
1651

1752
public extension TunnelQuantumResistance {
1853
/// A single source of truth for whether the current state counts as on
1954
var isEnabled: Bool {
20-
[.on, .automatic].contains(self)
55+
self == .on
2156
}
2257
}

ios/MullvadSettings/TunnelSettingsV3.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ public struct TunnelSettingsV3: Codable, Equatable, TunnelSettings {
3434
relayConstraints: relayConstraints,
3535
dnsSettings: dnsSettings,
3636
wireGuardObfuscation: wireGuardObfuscation,
37-
tunnelQuantumResistance: .automatic
37+
tunnelQuantumResistance: .on
3838
)
3939
}
4040

ios/MullvadSettings/TunnelSettingsV4.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ public struct TunnelSettingsV4: Codable, Equatable, TunnelSettings {
2626
relayConstraints: RelayConstraints = RelayConstraints(),
2727
dnsSettings: DNSSettings = DNSSettings(),
2828
wireGuardObfuscation: WireGuardObfuscationSettings = WireGuardObfuscationSettings(),
29-
tunnelQuantumResistance: TunnelQuantumResistance = .automatic
29+
tunnelQuantumResistance: TunnelQuantumResistance = .on
3030
) {
3131
self.relayConstraints = relayConstraints
3232
self.dnsSettings = dnsSettings

ios/MullvadSettings/TunnelSettingsV5.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ public struct TunnelSettingsV5: Codable, Equatable, TunnelSettings {
2929
relayConstraints: RelayConstraints = RelayConstraints(),
3030
dnsSettings: DNSSettings = DNSSettings(),
3131
wireGuardObfuscation: WireGuardObfuscationSettings = WireGuardObfuscationSettings(),
32-
tunnelQuantumResistance: TunnelQuantumResistance = .automatic,
32+
tunnelQuantumResistance: TunnelQuantumResistance = .on,
3333
tunnelMultihopState: MultihopStateV1 = .off
3434

3535
) {

ios/MullvadSettings/TunnelSettingsV6.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ public struct TunnelSettingsV6: Codable, Equatable, TunnelSettings, Sendable {
3232
relayConstraints: RelayConstraints = RelayConstraints(),
3333
dnsSettings: DNSSettings = DNSSettings(),
3434
wireGuardObfuscation: WireGuardObfuscationSettings = WireGuardObfuscationSettings(),
35-
tunnelQuantumResistance: TunnelQuantumResistance = .automatic,
35+
tunnelQuantumResistance: TunnelQuantumResistance = .on,
3636
tunnelMultihopState: MultihopStateV1 = .off,
3737
daita: DAITASettings = DAITASettings()
3838
) {

ios/MullvadSettings/TunnelSettingsV7.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ public struct TunnelSettingsV7: Codable, Equatable, TunnelSettings, Sendable {
3535
relayConstraints: RelayConstraints = RelayConstraints(),
3636
dnsSettings: DNSSettings = DNSSettings(),
3737
wireGuardObfuscation: WireGuardObfuscationSettings = WireGuardObfuscationSettings(),
38-
tunnelQuantumResistance: TunnelQuantumResistance = .automatic,
38+
tunnelQuantumResistance: TunnelQuantumResistance = .on,
3939
tunnelMultihopState: MultihopStateV1 = .off,
4040
daita: DAITASettings = DAITASettings(),
4141
includeAllNetworks: IncludeAllNetworksSettings = IncludeAllNetworksSettings()

ios/MullvadSettings/TunnelSettingsV8.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ public struct TunnelSettingsV8: Codable, Equatable, TunnelSettings, Sendable {
3535
relayConstraints: RelayConstraints = RelayConstraints(),
3636
dnsSettings: DNSSettings = DNSSettings(),
3737
wireGuardObfuscation: WireGuardObfuscationSettings = WireGuardObfuscationSettings(),
38-
tunnelQuantumResistance: TunnelQuantumResistance = .automatic,
38+
tunnelQuantumResistance: TunnelQuantumResistance = .on,
3939
tunnelMultihopState: MultihopStateV2 = .never,
4040
daita: DAITASettings = DAITASettings(),
4141
includeAllNetworks: IncludeAllNetworksSettings = IncludeAllNetworksSettings()

ios/MullvadVPN/Classes/AccessbilityIdentifier.swift

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -257,7 +257,6 @@ public enum AccessibilityIdentifier: Equatable {
257257
case localNetworkSharingSwitch
258258

259259
// Quantum resistance
260-
case quantumResistanceAutomatic
261260
case quantumResistanceOff
262261
case quantumResistanceOn
263262

ios/MullvadVPN/View controllers/VPNSettings/VPNSettingsCellFactory.swift

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -175,13 +175,6 @@ final class VPNSettingsCellFactory: @preconcurrency CellFactoryProtocol {
175175
cell.setAccessibilityIdentifier(item.accessibilityIdentifier)
176176
cell.applySubCellStyling()
177177

178-
case .quantumResistanceAutomatic:
179-
guard let cell = cell as? SelectableSettingsCell else { return }
180-
181-
cell.titleLabel.text = NSLocalizedString("Automatic", comment: "")
182-
cell.setAccessibilityIdentifier(item.accessibilityIdentifier)
183-
cell.applySubCellStyling()
184-
185178
case .quantumResistanceOn:
186179
guard let cell = cell as? SelectableSettingsCell else { return }
187180

0 commit comments

Comments
 (0)