Davide De Rosa
2a54d59a80
Roll back broken TunnelKit .killSwitch flag ( #294 )
2023-04-18 17:22:45 +02:00
Davide De Rosa
67fc2a3cc0
Override manual DNS servers when using DoH/DoT ( #283 )
2023-04-06 12:50:39 +02:00
Davide De Rosa
d4d3d97081
Attempt beta release
2023-04-04 17:11:44 +02:00
Davide De Rosa
3678d01dc1
Prepare release
...
- Use versioned TunnelKit
- Update targets in README
2023-04-04 17:10:54 +02:00
Davide De Rosa
7e2e4d6caa
Import missing translations ( #280 )
2023-04-04 17:07:41 +02:00
Davide De Rosa
e050c0c8df
Catch WireGuard parsing errors properly ( #279 )
...
They could be reported as OpenVPN errors.
2023-04-03 08:48:18 +02:00
Davide De Rosa
6fd1f96e54
Use a distinct debug log per VPN protocol ( #277 )
...
Log content from different tunnels was interleaved.
Store debug logs in a protocol-specific folder.
2023-04-01 21:40:15 +02:00
Davide De Rosa
44e0ca9127
Force Mac "Catalyst" idiom in debug log ( #276 )
...
Mac Catalyst incorrectly reported as "Pad".
2023-04-01 16:24:27 +02:00
Davide De Rosa
33e0ceec04
Lock in background ( #275 )
...
There are plenty of situations where the app kind of stays in the
foreground, but goes to .inactive state. Lock screen could be
annoying in those cases.
2023-03-31 23:47:29 +02:00
Davide De Rosa
e9f11d1dbe
Attempt beta release
2023-03-25 17:07:58 +01:00
Davide De Rosa
1e0d522010
Drop #available condition on iOS 15 ( #274 )
2023-03-25 17:05:53 +01:00
Davide De Rosa
513b38584d
Upgrade SwiftLint to CI version ( #266 )
2023-03-19 16:10:40 +01:00
Davide De Rosa
1dda8dce98
Attempt beta release
2023-03-19 08:45:34 +01:00
Davide De Rosa
8d0fb5c9b5
Support DoH/DoT network settings in WireGuard profiles ( #264 )
2023-03-19 08:41:51 +01:00
Davide De Rosa
17ae9793df
Randomize provider server ( #263 )
...
* Pick random server within location
* Add toggle to provider section in profile
2023-03-19 08:19:32 +01:00
Davide De Rosa
c85f3d894e
Restore DNS "Domain" setting ( #260 )
2023-03-17 22:16:04 +01:00
Davide De Rosa
f06f097f27
Add SwiftLint phase ( #262 )
2023-03-17 21:55:47 +01:00
Davide De Rosa
e7a98acf9c
Restore generic VPN in TunnelKitVPNManagerStrategy
...
MockVPN was not compiling.
Partially revert e17224e61e
2023-03-17 21:19:32 +01:00
Davide De Rosa
37354d1b87
Update copyright
2023-03-17 16:56:19 +01:00
Davide De Rosa
e17224e61e
Refactor stale library entities
...
- Move VPNConfiguration* to VPN implementation
- Drop old model protocols
2023-03-17 16:53:13 +01:00
Davide De Rosa
2e10aab039
Extend authentication methods ( #259 )
...
* Add profile authentication method
- Persistent (default, fallback)
- Interactive (may expire through reconnections)
- TOTP (seed-based) - currently disabled
* Disable on-demand if login is interactive
* Present interactive prompt on VPN toggle
2023-03-17 16:49:35 +01:00
Davide De Rosa
44ccd21536
Fetch full profiles from Core Data ( #258 )
...
* Fetch full profiles
* Manage full profiles in organizer
2023-03-16 16:49:09 +01:00
Davide De Rosa
17b01a4dbc
Clean up some code
...
- Drop stale generic
- Improve readability
2023-03-16 15:12:23 +01:00
Davide De Rosa
3f6c71e4f5
Update API (TorGuard)
2022-12-04 12:22:58 +01:00
Davide De Rosa
6e6c212649
Move .killSwitch property to extras
2022-11-10 07:55:31 +01:00
Davide De Rosa
1b704d7d4a
Decouple VPNManager from TunnelKit ( #248 )
...
* Drop VPNManager dependency on TunnelKit
* Hook .masksPrivateData to preferences updates
2022-11-10 07:42:08 +01:00
Davide De Rosa
ba09dcffa7
Full OpenVPN XOR patch ( #245 )
2022-11-06 18:08:41 +01:00
Davide De Rosa
e2c976e58d
Attempt beta release
2022-10-31 14:18:07 +01:00
Davide De Rosa
e1a3e7992f
Update TunnelKit with .killSwitch option
...
Fixes #181
2022-10-30 11:54:52 +01:00
Davide De Rosa
aca431aac5
Run tests on PR ( #241 )
2022-10-30 11:53:53 +01:00
Davide De Rosa
22c28de641
Retain original filename as imported profile name ( #240 )
2022-10-30 10:22:44 +01:00
Davide De Rosa
dad6d820e9
Upgrade project to Xcode 14
2022-10-29 22:18:02 +02:00
Davide De Rosa
cdc05f0c10
Update TunnelKit
...
Split IP settings and routes. Now properly handling local routes.
2022-10-29 12:28:27 +02:00
Davide De Rosa
0bf1c71504
Update TunnelKit
...
- Default gateway not properly configured
2022-10-28 15:41:49 +02:00
Davide De Rosa
e9b7be6334
Update TunnelKit
...
- Could encode but not decode profiles with IPv6 endpoints from
Core Data
- Improve options logging
2022-10-27 00:42:48 +02:00
Davide De Rosa
e1d8ec6066
Attempt beta release
2022-10-25 09:07:39 +02:00
Davide De Rosa
7c2d120a09
Update TunnelKit to fix 2.0.1 regressions
...
Fixes #237
2022-10-25 09:06:35 +02:00
Davide De Rosa
f6e0caaa73
Implement --remote-random-hostname
...
- Update TunnelKit
- Show in UI
2022-10-17 09:06:52 +02:00
Davide De Rosa
c345265451
Attempt beta release
2022-10-16 08:36:17 +02:00
Davide De Rosa
54c53707e0
Add app log in Diagnostics screen ( #234 )
2022-10-16 08:33:32 +02:00
Davide De Rosa
fbc17877b1
Suppress buggy Xcode warnings
...
@discardableResult annotations became suddenly ineffective.
2022-10-15 22:30:21 +02:00
Davide De Rosa
66a04862f9
Override Mullvad password ( #233 )
...
Set "m" as per official documentation:
https://mullvad.net/en/help/installing-mullvad-iphone-and-ipad/
2022-10-15 16:44:48 +02:00
Davide De Rosa
f95e4f228d
Implement --route-nopull via TunnelKit ( #230 )
...
Use it internally to override server-pushed settings.
2022-10-13 19:09:51 +02:00
Davide De Rosa
5627e6c4a9
Address UI race conditions ( #229 )
...
* Make some managers concurrency-safe
- IntentsManager: @MainActor, non-shared, continuation
- SSIDReader: @MainActor, continuation
- Reviewer: main queue, non-shared
* Review wrong use of Concurrency framework
There were background thread calls e.g. in VPNToggle, because
ProfileManager was used inside a VPNManager async call.
Annotate @MainActor wherever a Task involves UI.
* Make main managers MainActor
* Apply MainActor to Mac menus
* [ci skip] Update CHANGELOG
* Set MainActor consistently on Mac menu view models
2022-10-13 08:53:50 +02:00
Davide De Rosa
54dc8a2556
Use MockVPN from TunnelKit
...
Rather than ad hoc strategy.
2022-10-12 22:37:40 +02:00
Davide De Rosa
fb4d563804
Do not sort Core Data entities by UUID
...
Crash on compare.
2022-10-11 09:43:26 +02:00
Davide De Rosa
d40e40ae02
Wrap UIKit extension inside canImport
...
See fab982bf81
2022-10-08 09:20:27 +02:00
Davide De Rosa
8fed92c52e
Update API
2022-10-04 21:49:34 +02:00
Davide De Rosa
1cbc481516
Allow spaces as legal filename characters
2022-10-04 07:56:28 +02:00
Davide De Rosa
fab982bf81
Fix UI idiom in debug log
2022-10-04 07:34:32 +02:00