Commit Graph

988 Commits

Author SHA1 Message Date
Jason A. Donenfeld 9852a75f01 Key: we already do len checking in C 2019-02-08 14:39:59 +01:00
Jason A. Donenfeld 657915e931 Info.plist: Add missing key types
I worry that LSMinimumSystemVersion in the extension's plist might be
problematic, since that same plist runs on macOS and iOS. We _might_
need to bifurcate.
2019-02-08 03:47:36 +01:00
Jason A. Donenfeld 9239512b49 Version bump
First Mac App Store release if all goes well.
2019-02-08 03:28:28 +01:00
Jason A. Donenfeld 7ebf36d0f4 Key: Use C implementation instead
Swift compiles so slowly and it's unclear all of the insane type punning
was even correct.
2019-02-08 03:23:15 +01:00
Jason A. Donenfeld e2c717212b Key: Constant time encoding 2019-02-08 03:23:15 +01:00
Roopesh Chander 443ecb1e20 TunnelsManager: Ignore status changes on tunnel providers we don't have 2019-02-08 04:40:11 +05:30
Roopesh Chander 6014b4b8a6 iOS: Use shorter pretty time 2019-02-08 04:40:11 +05:30
Roopesh Chander b947c98dc0 iOS: Tunnel detail: Turn off animation when showing fields changing 2019-02-08 04:40:11 +05:30
Roopesh Chander 59918ec67a macOS: Show alert if exiting with an active tunnel
Instead of deactivating the tunnel.
2019-02-08 04:40:11 +05:30
Roopesh Chander fd40b3adb8 TunnelsManager: Don't lose .restarting state 2019-02-08 02:34:30 +05:30
Roopesh Chander 9111b2723f TunnelsManager: Log startDeactivation calls 2019-02-08 02:34:29 +05:30
Jason A. Donenfeld c4b253f8b3 wireguard-go: Bump 2019-02-07 21:09:53 +01:00
Jason A. Donenfeld 56d878481b Enable hardened runtime 2019-02-07 19:17:27 +01:00
Jason A. Donenfeld e89714cfbb NetworkExtensionMac: Don't forget to link to the networkextension framework 2019-02-07 19:13:43 +01:00
Jason A. Donenfeld 364fcd4dbe StatusItemController: Show animation when deactivating 2019-02-07 18:19:15 +01:00
Jason A. Donenfeld 2d761b4a00 PacketTunnelProvider: proper fix for 32073323 2019-02-07 15:01:37 +01:00
Roopesh Chander af026c106e TunnelsManager: When creating/modifying a tunnel, update the associated object 2019-02-07 18:18:04 +05:30
Jason A. Donenfeld 5c67f7467c macOS: prohibit multiple instances of app 2019-02-06 06:20:23 +01:00
Jason A. Donenfeld c005893fe7 PrivateDataConfirmation: prompt with touch/face/pin/password ID for viewing/exporting keys 2019-02-06 06:20:23 +01:00
Jason A. Donenfeld 30576a1fe6 LegacyConfig: Remove and support plaintext for .mobileconfig 2019-02-06 06:20:23 +01:00
Jason A. Donenfeld 0407d41005 Keychain: store configurations in keychain instead of providerConfig 2019-02-06 06:20:23 +01:00
Jason A. Donenfeld bcd475e0bc TunnelsManager: cache access to configuration object
Supposedly we never change it once per object, so we do the objective C
hack of adding it cached to the extension. This prevents 1000s of calls
to the keychain and improves the speed of imports.
2019-02-06 01:52:31 +01:00
Jason A. Donenfeld c79a45f2e2 Project: Remove OS name from appex file name 2019-02-06 01:52:31 +01:00
Jason A. Donenfeld d2556d045d TunnelsManager: Wait for 6 seconds on deactivation instead of 5 2019-02-06 01:52:31 +01:00
Roopesh Chander 4ac1437c4b wg-quick conf parser: Handle inline comments correctly 2019-02-05 16:45:32 +05:30
Roopesh Chander d3a4d606cf macOS: Select tunnel after adding it with 'Add empty tunnel' 2019-02-05 16:39:19 +05:30
Roopesh Chander 6838d19599 macOS: Ensure fields are updated on saving 2019-02-05 16:15:43 +05:30
Roopesh Chander 1ae8e6228f iOS: Ensure fields are updated on saving 2019-02-05 15:54:23 +05:30
Roopesh Chander caa4fadd01 macOS: Apply runtime configuration by diff-ing
And apply the diff on the tableView as insertRows/removeRows.
2019-02-05 12:36:35 +05:30
Roopesh Chander 63371841af TunnelViewModel: Don't call peer change handler if there are no changes 2019-02-05 12:36:34 +05:30
Roopesh Chander 5e704465a7 macOS: Tunnel detail: Refactor calculation of tableViewModelRows 2019-02-05 12:36:34 +05:30
Jason A. Donenfeld e4277c2dfd x25519: demand RNG is successful 2019-02-05 00:49:48 +01:00
Jason A. Donenfeld fc63aa7c17 Config: Add template for macOS key 2019-02-03 13:47:42 +01:00
Roopesh Chander c392ed13d6 iOS: SwitchCell should hold the observation token
And should nil the token when preparing for reuse.

This also reverts "iOS: Tunnel detail: Refactor updation of status"
2019-02-03 12:40:19 +05:30
Roopesh Chander c322117e49 iOS: KeyValueCell should hold the observation token
And should nil the token when preparing for reuse.

Otherwise, the observation closure is still active even after the cell
gets reused.
2019-02-03 12:40:19 +05:30
Jason A. Donenfeld 2c3b71629b wireguard-go: bump 2019-02-03 00:20:24 +01:00
Roopesh Chander 99f72293f6 iOS: Apply runtime configuration by diff-ing
And apply the diff on the tableView as insert/remove/reloads.
2019-02-02 19:22:01 +05:30
Roopesh Chander 10f52ca69a iOS: Tunnel detail: Keep track of visible fields with a [Bool] array 2019-02-02 18:10:57 +05:30
Jason A. Donenfeld ac7b938953 Strings: fix backwards clock wording 2019-02-01 14:49:38 +01:00
Roopesh Chander d2e14cfb19 iOS: Tunnel detail: Reload runtime config every second 2019-02-01 15:27:17 +05:30
Roopesh Chander 26e6f23582 iOS: Tunnel detail: Refactor updation of status 2019-01-31 18:46:46 +05:30
Roopesh Chander d605613c62 Fix handling of 'PersistentKeepalive: every n seconds' 2019-01-31 18:22:08 +05:30
Roopesh Chander d2abc246cf iOS: Make it compile again 2019-01-31 18:17:04 +05:30
Roopesh Chander 60f1fee6e7 Configure timers to fire even when tracking mouse events 2019-01-31 17:04:34 +05:30
Roopesh Chander 85e9b48f87 macOS: Tunnel detail: Reload runtime config every second 2019-01-31 16:48:51 +05:30
Roopesh Chander 558f6db3c2 Logger: Convert do-catch to try? 2019-01-28 17:50:48 +05:30
Roopesh Chander 28e5a061c1 Runtime info: Make bytecount and timestamp info prettier 2019-01-28 17:27:08 +05:30
Roopesh Chander 69fddfa1f8 Persistent Keepalive detail should read 'every n seconds' 2019-01-28 16:07:28 +05:30
Roopesh Chander df7bdc0baa TunnelsManager: Invoke reload() in a subsequent runloop 2019-01-26 14:31:42 +05:30
Roopesh Chander 0c9380fe4e macOS: Delay .deactivated status to workaround system bug
For some time after it's connection status becomes .disconnected,
if a tunnel gets started, it gets automatically killed by the system
after ~25 seconds.
2019-01-26 14:25:38 +05:30