Roopesh Chander
|
db72e9522a
|
Model: Allow creating an interface with empty name
But don't allow such a tunnel to be added to the tunnel manager.
(We'll need to create an interface with an empty name when we're reading QR codes.)
|
2018-10-27 15:13:02 +05:30 |
Roopesh Chander
|
e8633b243d
|
Info.plist: support for opening wg-quick config (.conf) files
|
2018-10-27 15:13:02 +05:30 |
Roopesh Chander
|
8561b0f84c
|
Info.plist: Export the config file type declaration
|
2018-10-27 15:13:02 +05:30 |
Roopesh Chander
|
ab3fab4024
|
Config file: Parsing a wg-quick config file
|
2018-10-27 15:13:01 +05:30 |
Roopesh Chander
|
903fd02eb2
|
Model: MTU should be a 16-bit integer
|
2018-10-27 15:13:01 +05:30 |
Roopesh Chander
|
8423814876
|
VPN: Tunnel container shall provide direct access to the configuration object
|
2018-10-27 15:13:01 +05:30 |
Roopesh Chander
|
34cc14fefa
|
Tunnel editing: Modifying a tunnel configuration
|
2018-10-27 15:13:01 +05:30 |
Roopesh Chander
|
61cf3f8a5b
|
Tunnel creation: After saving the new tunnel, show the detail view
|
2018-10-27 15:13:01 +05:30 |
Roopesh Chander
|
ebb0dcd923
|
Tunnel detail: Don't show fields that have empty value
|
2018-10-27 15:13:01 +05:30 |
Roopesh Chander
|
e2663822bb
|
Tunnel creation: Public key is uneditable
|
2018-10-27 15:13:01 +05:30 |
Roopesh Chander
|
ad9e9b6666
|
Tunnel creation: An uneditable field's value should be grey as well
|
2018-10-27 15:13:01 +05:30 |
Roopesh Chander
|
9120e27f2b
|
Tunnel creation: Generate key pair
|
2018-10-27 15:13:01 +05:30 |
Roopesh Chander
|
423fc4f9e0
|
Tunnel creation: Compute public key from private key as the text is being edited
|
2018-10-27 15:13:01 +05:30 |
Roopesh Chander
|
91ea0fe7e5
|
Tunnel view model: Populate interface's public key
|
2018-10-27 15:13:01 +05:30 |
Roopesh Chander
|
a4016afd7c
|
Model: Interface: Add a public key computed property
|
2018-10-27 15:13:01 +05:30 |
Roopesh Chander
|
1f166c8d3e
|
Crypto: Swift wrapper for the Curve25519 C code
|
2018-10-27 15:13:01 +05:30 |
Jeroen Leenarts
|
3bae6c6f01
|
Crypto: Curve25519: Add explicit cast to supress conversion warning.
|
2018-10-27 15:13:01 +05:30 |
Roopesh Chander
|
c68c214cbf
|
Crypto: Add Curve25519 C code to project
|
2018-10-27 15:13:01 +05:30 |
Jeroen Leenarts
|
c2abe9f011
|
Crypto: Add key generation functions
|
2018-10-27 15:13:01 +05:30 |
Roopesh Chander
|
e6eef48c69
|
Tunnel creation: Hide 'Exclude private IPs' switch till the feature is ready
|
2018-10-27 15:13:01 +05:30 |
Roopesh Chander
|
3adb6cc15f
|
Set Xcode template for smaller copyright headers
|
2018-10-27 15:13:01 +05:30 |
Roopesh Chander
|
e0a8aedc3d
|
Smaller copyright headers
|
2018-10-27 15:13:01 +05:30 |
Roopesh Chander
|
a8138efefe
|
Tunnel detail: Start off with the tunnel detail view
|
2018-10-27 15:13:01 +05:30 |
Roopesh Chander
|
cd7d6d5152
|
Tunnel view model: Add copy public key
|
2018-10-27 15:13:01 +05:30 |
Roopesh Chander
|
6d4151eafa
|
Tunnel creation: Variable renaming
s/interfaceEditFieldsBySection/interfaceFieldsBySection/g;
s/peerEditFieldsBySection/peerFieldsBySection/g;
|
2018-10-27 15:13:01 +05:30 |
Roopesh Chander
|
63f96b928a
|
Tunnel view model: The view model applies for both editing and viewing
|
2018-10-27 15:13:01 +05:30 |
Roopesh Chander
|
e8350b689f
|
Tunnels list: Update when a tunnel is added
|
2018-10-27 15:13:01 +05:30 |
Roopesh Chander
|
0324cebe2b
|
Tunnel creation: Saving a configuration
|
2018-10-27 15:13:01 +05:30 |
Roopesh Chander
|
e0ee01db78
|
Model: Use DNSServer in the Configuration model
|
2018-10-27 15:13:01 +05:30 |
Roopesh Chander
|
bebbaeaa93
|
Model for DNS server
|
2018-10-27 15:13:01 +05:30 |
Roopesh Chander
|
1b5ab9a72f
|
Model: Endpoint host should not have invalid characters
|
2018-10-27 15:13:01 +05:30 |
Roopesh Chander
|
c8fa6850c2
|
Model: listenPort and persistentKeepAlive should be 16-bit integers
|
2018-10-27 15:13:01 +05:30 |
Roopesh Chander
|
0fa97c38ed
|
Tunnel creation: Refactor by creating a separate view model
|
2018-10-27 15:13:01 +05:30 |
Roopesh Chander
|
9f252d4e37
|
Tunnel creation: Validate the data and prepare to save to a configuration
|
2018-10-27 15:13:01 +05:30 |
Roopesh Chander
|
42c3d63d13
|
Tunnel creation: Save typed values in a scratchpad
|
2018-10-27 15:13:01 +05:30 |
Roopesh Chander
|
d831bd44c4
|
Tunnel creation: Fix Persistent Keepalive label's look
|
2018-10-27 15:13:01 +05:30 |
Roopesh Chander
|
bbd13ad4cf
|
Tunnel creation: Start off with tunnel creation
|
2018-10-27 15:13:01 +05:30 |
Roopesh Chander
|
e337427eae
|
Model: Make InterfaceConfiguration and PeerConfiguration structs
|
2018-10-27 15:13:01 +05:30 |
Roopesh Chander
|
3e72dcade8
|
Model: Make it impossible to create invalid interface / peer configuration instances
|
2018-10-27 15:13:01 +05:30 |
Roopesh Chander
|
255b579f4d
|
Use Endpoint in the Configuration model
|
2018-10-27 15:13:01 +05:30 |
Roopesh Chander
|
7482ee8cf5
|
Model for an endpoint
|
2018-10-27 15:13:01 +05:30 |
Roopesh Chander
|
1d01d1f85d
|
Model: IPAddressRange: Converting to and from String
|
2018-10-27 15:13:01 +05:30 |
Roopesh Chander
|
945953177e
|
Model: Name should be part of the interface, not the tunnel
|
2018-10-27 15:13:01 +05:30 |
Roopesh Chander
|
e00a577bba
|
Tunnels list: Show an actions list when the '+' is tapped
|
2018-10-27 15:13:01 +05:30 |
Roopesh Chander
|
0593a77d7a
|
Tunnels list: Show data from the tunnels manager
|
2018-10-27 15:13:01 +05:30 |
Roopesh Chander
|
052ece53a3
|
Tunnels list: Make the table view style explicit
|
2018-10-27 15:13:01 +05:30 |
Roopesh Chander
|
b690de0d14
|
VPN: Add TunnelsManager to manage the tunnels in the app
|
2018-10-27 15:13:01 +05:30 |
Roopesh Chander
|
66307fd3c5
|
Bump deployment target to iOS 12.0
|
2018-10-27 15:13:01 +05:30 |
Roopesh Chander
|
f6054775ca
|
Use IPAddressRange in the Configuration model
|
2018-10-27 15:13:01 +05:30 |
Roopesh Chander
|
0948363d5b
|
Model for an IP Address range
|
2018-10-27 15:13:01 +05:30 |