Commit Graph

247 Commits

Author SHA1 Message Date
Davide De Rosa
a4a82fbd03 Fix table pre-scrolling to selection
iOS is broken, must wrap in a DispatchQueue.main.async
2019-04-05 12:46:50 +02:00
Davide De Rosa
8a7b0389ed Fix infrastructure country codes 2019-04-05 12:35:34 +02:00
Davide De Rosa
451ab07796 Use subtitle cell in pools 2019-04-05 12:06:26 +02:00
Davide De Rosa
485fd091aa Add shortcut for profile by key 2019-04-05 00:52:36 +02:00
Davide De Rosa
ac713bebda Present DNS domain in configuration UI
Fixes #48
2019-04-04 19:11:55 +02:00
Davide De Rosa
fe669bb3e0 Migrate to Configuration optionals
- cipher
- digest
- compressionFraming
2019-04-04 19:03:55 +02:00
Davide De Rosa
d53e874cac Migrate old endpoints to new format 2019-04-04 19:03:55 +02:00
Davide De Rosa
1904687a22 Upgrade to TunnelKit 1.6.0
- Make cipher/digest/compressionFraming optional
- Move endpointProtocols inside SessionProxy.Configuration
- Rename OptionsError to ConfigurationError
2019-04-04 19:03:53 +02:00
Davide De Rosa
cb2917a0a8 Fix wrong return in loadProfiles() 2019-04-04 12:00:12 +02:00
Davide De Rosa
092789a388 Fix path to infrastructure caches
Fixes #54
2019-04-02 09:54:03 +02:00
Davide De Rosa
8d3dad0a1f Add WINDFLIX servers to Windscribe 2019-04-02 09:24:19 +02:00
Davide De Rosa
d6284350bb Add Windscribe affiliate link 2019-04-01 10:46:39 +02:00
Davide De Rosa
0bf580017c Add Windscribe infrastructure
And update others.
2019-04-01 10:09:40 +02:00
Davide De Rosa
a98ddbb224 Add Windscribe provider 2019-04-01 09:55:57 +02:00
Davide De Rosa
3197f49368 Add down/up indication of data count
Other improvements:

- TunnelKit reports 0 rather than nil upon connection.
- Fall back to "Unavailable" rather than empty string.
2019-03-30 23:38:06 +01:00
Davide De Rosa
921e57557d Render data count with closest unit
Set a 10% boundary (e.g. 100MB = 0.1GB).
2019-03-30 20:10:04 +01:00
Davide De Rosa
bc0a0d40dc Observe tunnel data count periodically (5s)
Use Timer as KVO is not possible on App Group defaults.

Be tolerant about missing sections, return type is optional.

Also reword data count cell caption.
2019-03-30 20:10:04 +01:00
Davide De Rosa
912ae63ead Convert resources to Base l10n
Could this fix the uploader issue with intents localization?
2019-03-30 19:25:06 +01:00
Davide De Rosa
80d462dc3a Rename Enable/Disable VPN intents 2019-03-29 13:22:25 +01:00
Davide De Rosa
e2cd0bc7e1 Reuse intent creation code from IntentDispatcher 2019-03-27 23:47:35 +01:00
Davide De Rosa
37cb568142 Reword "Move to" to "Connect to" 2019-03-27 22:25:25 +01:00
Davide De Rosa
e1638d1c73 Link add shortcut to manager 2019-03-27 21:08:51 +01:00
Davide De Rosa
d5b7a1e576 Show existing Siri shortcuts as first controller 2019-03-27 21:08:51 +01:00
Davide De Rosa
400cea0f7b Show EKU and random endpoint in configuration 2019-03-27 17:07:29 +01:00
Davide De Rosa
250c3399da Reuse enabled/disabled strings in configuration 2019-03-27 17:04:06 +01:00
Davide De Rosa
08f088a5be Add EKU to both PIA presets 2019-03-26 00:52:50 +01:00
Davide De Rosa
60bacbaca5 Add EKU to bundled infras 2019-03-26 00:41:51 +01:00
Davide De Rosa
895b375741 Parse EKU validation from preset 2019-03-26 00:41:51 +01:00
Davide De Rosa
ecf9fece0f Parse compression from infra preset 2019-03-26 00:41:51 +01:00
Davide De Rosa
dc81356b31 Retry import after passphrase input
Isolate .ovpn parsing routines.

- AppDelegate (external URL)
- ImportedHosts

Only delete URL if error is not encryption passphrase.
2019-03-25 20:33:07 +01:00
Davide De Rosa
34fc10eef8 Split guidance and referral footers
Handle tap per footer.
2019-03-25 20:26:03 +01:00
Davide De Rosa
65b6cdccbf Parse server num and free bit 2019-03-25 20:07:46 +01:00
Davide De Rosa
838f097d65 Parse TLSWrap from infra preset "wrap" 2019-03-25 20:03:58 +01:00
Davide De Rosa
e00a7f60ce Update TunnelKit for --remote-random 2019-03-25 20:03:58 +01:00
Davide De Rosa
b1641f9554 Update infras with Mullvad 2019-03-22 20:05:38 +01:00
Davide De Rosa
7b814e4021 Add Mullvad account creation link 2019-03-22 19:57:57 +01:00
Davide De Rosa
54f7779c45 Add Mullvad provider 2019-03-22 19:29:55 +01:00
Davide De Rosa
2dd26ae72a Reword no framing to "Disabled" for consistency 2019-03-22 19:29:15 +01:00
Davide De Rosa
3b5207dc8f Better reconnect than disconnect 2019-03-22 19:25:12 +01:00
Davide De Rosa
c45e741750 Disconnect on masking change
To ensure that the stale log is erased immediately.
2019-03-22 19:23:32 +01:00
Davide De Rosa
fdc3869d29 Move baseVPNConfiguration to TransientStore
Simplifies configuration update.
2019-03-22 19:09:52 +01:00
Davide De Rosa
c391663d11 Persist masking flag 2019-03-22 19:09:52 +01:00
Davide De Rosa
e4c1ea4def Delete log on masking change
It may contain stale and either sensitive or irrelevant data.
2019-03-22 18:54:54 +01:00
Davide De Rosa
96f5210c7c Control debug masking via diagnostics
Be clear about NOT logging any sensitive data. In fact, the
variable name masksPrivateData is potentially misleading.
2019-03-22 18:54:54 +01:00
Davide De Rosa
9f6307dbc2 Make default VPN configuration mutable 2019-03-22 18:46:04 +01:00
Davide De Rosa
9a788ae0c8 Update bundled infra with areas 2019-03-21 22:21:42 +01:00
Davide De Rosa
dacd5653b4 Make localizedName a subordinate method
To reuse localizedCountryArea for sorting regardless of display.
2019-03-21 22:21:42 +01:00
Davide De Rosa
42f64db0b7 Localize pools consistently 2019-03-21 22:21:42 +01:00
Davide De Rosa
15f23dd448 Retain Pool.name internally but show .localizedName
Use name from API if available (XXX: not localized).

Make it private to avoid unintended use in app.
2019-03-21 22:21:42 +01:00
Davide De Rosa
3eb9c6ae98 Localize Pool via country code + area 2019-03-21 22:21:42 +01:00