Commit Graph

10 Commits

Author SHA1 Message Date
Eric Kuck d7a27426e9 All migration stuff moved to one gross file 2018-12-21 12:51:14 -06:00
Jason A. Donenfeld d540c1811c Simplify versioning of stored data 2018-12-21 18:58:06 +01:00
Jason A. Donenfeld df698658d2 Get rid of superflous isActivateOnDemandEnabled key 2018-12-21 18:50:32 +01:00
Eric Kuck f39893685f Updated NETunnelProvider save format 2018-12-21 16:42:16 +01:00
Roopesh Chander 4c1c1f013c TunnelsManager: If only Activate On Demand has changed, don't restart tunnel 2018-12-19 18:35:53 +05:30
Roopesh Chander b8c331c72d NE: Handle bad domain names and Activate On Demand
This combination causes iOS to keep trying to bring up the tunnel,
leading to a lot of displayMessage() alerts.

In this fix, if we get a DNS resolution error in an Activate On Demand
enabled tunnel, we silently retry 9 times (with a 4-second delay before
each retry) and then show the displayMessage() alert.
2018-12-19 15:38:00 +05:30
Eric Kuck 965f66e5e2 More linter warnings fixed, enabled more swiftlint rules, project cleanup 2018-12-12 15:33:14 -06:00
Roopesh Chander c0eb34c755 Model, Tunnels manager: Rewrite the model for VPN-on-demand
The VPN-on-demand settings should not be part of the tunnel
configuration. Rather, the onDemandRules stored in the
tunnel provider configuration serve as the one place
where the VPN-on-demand settings are stored.
2018-11-12 19:24:13 +05:30
Roopesh Chander 049e9f0b05 Model: Add activationType to tunnel configuration
We make sure existing tunnel serializations can be deserialized correctly.

We also bump up the tunnelConfigurationVersion, because the tunnel
configuration contents have changed.
2018-11-11 01:17:36 +05:30
Roopesh Chander e83af4bce5 Move logic to extension: NETunnelProviderProtocol extension code should be shared 2018-11-08 17:52:01 +05:30