Roopesh Chander
9690365dd4
macOS: Better handling of tunnels created by another user
...
Previously, the tunnels just got deleted.
Signed-off-by: Roopesh Chander <roop@roopc.net >
2019-04-03 19:04:12 +05:30
Roopesh Chander
062b4d4b16
on-demand: Remove ActivateOnDemandSetting type
...
The ActivateOnDemandOption type shall be used instead
Signed-off-by: Roopesh Chander <roop@roopc.net >
2019-03-18 06:46:55 +01:00
Roopesh Chander
5941bf181c
on-demand: iOS: Support for SSIDs
...
Signed-off-by: Roopesh Chander <roop@roopc.net >
2019-03-18 06:46:55 +01:00
Roopesh Chander
5d757982ba
on-demand: Infrastructure for supporting SSID-based rules
...
Signed-off-by: Roopesh Chander <roop@roopc.net >
2019-03-18 06:46:55 +01:00
Roopesh Chander
3767a12983
on-demand: Simplify OS-specific code for interface type selection
...
Previously, the enum values themselves were different for iOS and macOS.
With this commit, the enum values are common, and only how they're handled
is specific to iOS and macOS.
Signed-off-by: Roopesh Chander <roop@roopc.net >
2019-03-18 06:46:55 +01:00
Jason A. Donenfeld
b2b5e0e379
TunnelName: sort correctly with numbers and capitals
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com >
2019-03-18 06:46:55 +01:00
Roopesh Chander
663923864c
TunnelsManager: Don't restart if only on-demand setting has changed
...
Signed-off-by: Roopesh Chander <roop@roopc.net >
2019-03-11 13:20:21 +05:30
Roopesh Chander
9bc17034dd
TunnelsManager: Support for removing multiple tunnels at a time
...
Signed-off-by: Roopesh Chander <roop@roopc.net >
2019-03-10 19:43:27 +05:30
Roopesh Chander
3afcee04be
TunnelsManager: addMultiple() should also return the last error
...
Signed-off-by: Roopesh Chander <roop@roopc.net >
2019-03-05 15:29:28 +05:30
Roopesh Chander
5ed28907ec
iOS: Hack to restart active tunnel after adding a new tunnel
...
Signed-off-by: Roopesh Chander <roop@roopc.net >
2019-02-24 19:30:14 +05:30
Roopesh Chander
6331b81b5d
Migrate when we notice a new tunnel in reload()
...
Signed-off-by: Roopesh Chander <roop@roopc.net >
2019-02-12 17:43:40 +05:30
Roopesh Chander
7720307fc9
TunnelsManager: No need to access tunnelConfiguration on status change
...
Signed-off-by: Roopesh Chander <roop@roopc.net >
2019-02-09 19:42:50 +05:30
Jason A. Donenfeld
0e2556544e
Global: fix swiftlint issues
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com >
2019-02-08 17:07:28 +01:00
Jason A. Donenfeld
05547861b6
Key: Constant time encoding
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com >
2019-02-08 03:23:15 +01:00
Roopesh Chander
9eed5fd898
TunnelsManager: Ignore status changes on tunnel providers we don't have
...
Signed-off-by: Roopesh Chander <roop@roopc.net >
2019-02-08 04:40:11 +05:30
Roopesh Chander
ecd66defe5
TunnelsManager: Don't lose .restarting state
...
Signed-off-by: Roopesh Chander <roop@roopc.net >
2019-02-08 02:34:30 +05:30
Roopesh Chander
1f3ec042e0
TunnelsManager: Log startDeactivation calls
...
Signed-off-by: Roopesh Chander <roop@roopc.net >
2019-02-08 02:34:29 +05:30
Jason A. Donenfeld
394a0cbeb0
PacketTunnelProvider: proper fix for 32073323
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com >
2019-02-07 15:01:37 +01:00
Roopesh Chander
868fee0477
TunnelsManager: When creating/modifying a tunnel, update the associated object
...
Signed-off-by: Roopesh Chander <roop@roopc.net >
2019-02-07 18:18:04 +05:30
Jason A. Donenfeld
8c3557a907
Keychain: store configurations in keychain instead of providerConfig
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com >
2019-02-06 06:20:23 +01:00
Jason A. Donenfeld
a26d620f11
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.
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com >
2019-02-06 01:52:31 +01:00
Jason A. Donenfeld
71d26b4122
TunnelsManager: Wait for 6 seconds on deactivation instead of 5
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com >
2019-02-06 01:52:31 +01:00
Roopesh Chander
3b29578524
Configure timers to fire even when tracking mouse events
...
Signed-off-by: Roopesh Chander <roop@roopc.net >
2019-01-31 17:04:34 +05:30
Roopesh Chander
a796c6c485
TunnelsManager: Invoke reload() in a subsequent runloop
...
Signed-off-by: Roopesh Chander <roop@roopc.net >
2019-01-26 14:31:42 +05:30
Roopesh Chander
6ad3487a9d
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.
Signed-off-by: Roopesh Chander <roop@roopc.net >
2019-01-26 14:25:38 +05:30
Roopesh Chander
eabeb8ff05
macOS: Select the active tunnel when showing the manage tunnels window
...
Signed-off-by: Roopesh Chander <roop@roopc.net >
2019-01-24 18:35:11 +05:30
Roopesh Chander
3c80490273
TunnelsManager: func tunnelInOperation()
...
Signed-off-by: Roopesh Chander <roop@roopc.net >
2019-01-24 18:11:26 +05:30
Jason A. Donenfeld
22625e8cc4
Tunnel: support getting runtime configuration
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com >
2019-01-24 01:37:57 +01:00
Roopesh Chander
11e44f9ae5
iOS: Fix stale tunnel being shown on iPad
...
When the detail view is shown in the iPad and we delete
the current tunnel with a list view swipe rather than the delete button,
the detail view should go blank.
Signed-off-by: Roopesh Chander <roop@roopc.net >
2019-01-23 16:11:55 +05:30
Roopesh Chander
54f45cb3f8
macOS: reload: Iterate in reverse
...
Signed-off-by: Roopesh Chander <roop@roopc.net >
2019-01-22 20:06:52 +05:30
Jason A. Donenfeld
704de3b26c
TunnelsManager: refresh status after replacing insides
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com >
2019-01-22 15:35:14 +01:00
Jason A. Donenfeld
d05b735703
TunnelsManager: use new helper
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com >
2019-01-22 15:20:57 +01:00
Roopesh Chander
2aad8cf0e8
macOS: Handle tunnel deletions outside the app
...
Signed-off-by: Roopesh Chander <roop@roopc.net >
2019-01-22 19:30:21 +05:30
Roopesh Chander
273ee04450
Better os() directives
...
Signed-off-by: Roopesh Chander <roop@roopc.net >
2019-01-22 04:06:37 +05:30
Roopesh Chander
86165d25f7
TunnelsManager: Remove unused variable
...
Signed-off-by: Roopesh Chander <roop@roopc.net >
2019-01-18 09:32:49 +01:00
Roopesh Chander
e29cf19fdd
macOS: Different status bar icon looks for different states
...
- Looks dimmed when no tunnel is active
- Looks normal when a tunnel is active
- Animates when a tunnel is activating
Signed-off-by: Roopesh Chander <roop@roopc.net >
2019-01-16 01:26:10 +05:30
Roopesh Chander
09d7a5229a
On-Demand: Add support for macOS-specific values
...
Signed-off-by: Roopesh Chander <roop@roopc.net >
2019-01-14 14:52:26 +05:30
Jason A. Donenfeld
e2384e143c
Update copyright
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com >
2019-01-07 19:23:39 -05:00
Eric Kuck
508ba44576
Fix typo for simulator builds
...
Signed-off-by: Eric Kuck <eric@bluelinelabs.com >
2018-12-22 14:32:39 -06:00
Roopesh Chander
e6e1795d08
TunnelErrors: Add alert text for PacketTunnelProviderError
...
Signed-off-by: Roopesh Chander <roop@roopc.net >
2018-12-22 16:05:43 +05:30
Roopesh Chander
fd29cf3402
TunnelStatus: Absorb NEVPNStatus+CustomStringConvertible
...
Signed-off-by: Roopesh Chander <roop@roopc.net >
2018-12-22 15:46:28 +05:30
Jason A. Donenfeld
56ad5f74e9
Also refresh status
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com >
2018-12-22 07:07:53 +01:00
Jason A. Donenfeld
49bf55021f
Reassign tunnelProvider if it changes from outside the app
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com >
2018-12-22 06:56:12 +01:00
Eric Kuck
0bec5b04b0
All models now Equatable
...
Signed-off-by: Eric Kuck <eric@bluelinelabs.com >
2018-12-21 22:57:17 -06:00
Jason A. Donenfeld
d36e7e27ff
Clean up trailing whitespace
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com >
2018-12-22 05:30:35 +01:00
Eric Kuck
9098cd1161
Removing a tunnel from iOS's settings is now immediately reflected in app
...
Signed-off-by: Eric Kuck <eric@bluelinelabs.com >
2018-12-21 21:59:43 -06:00
Jason A. Donenfeld
8365adf435
Localize remaining strings in network extension
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com >
2018-12-22 03:42:01 +01:00
Jason A. Donenfeld
f2000aa1da
Combine double log invocations
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com >
2018-12-22 02:21:07 +01:00
Eric Kuck
1eeed89174
Fixes mock tunnels
...
Signed-off-by: Eric Kuck <eric@bluelinelabs.com >
2018-12-21 18:35:01 -06:00
Jason A. Donenfeld
4ed646973e
Move name from interface to tunnel
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com >
2018-12-22 00:28:18 +01:00