aboutsummaryrefslogtreecommitdiffstats
path: root/WireGuard/WireGuard/VPN (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Global: fix up captialization in headersJason A. Donenfeld2018-10-303-3/+3
| | | | Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* VPN: Better error messagesRoopesh Chander2018-10-301-1/+6
| | | | Signed-off-by: Roopesh Chander <roop@roopc.net>
* VPN: Specify an error when there are no peers with an endpointRoopesh Chander2018-10-291-0/+5
| | | | Signed-off-by: Roopesh Chander <roop@roopc.net>
* VPN: If we don't have to make a DNS request, we shouldn't enter that statusRoopesh Chander2018-10-292-13/+43
| | | | Signed-off-by: Roopesh Chander <roop@roopc.net>
* VPN: Cache DNS resolutions while the app is in memoryRoopesh Chander2018-10-291-6/+22
| | | | Signed-off-by: Roopesh Chander <roop@roopc.net>
* VPN: Reload the tunnel before starting it upRoopesh Chander2018-10-291-9/+12
| | | | | | To avoid errors like this: https://stackoverflow.com/q/47550706 Signed-off-by: Roopesh Chander <roop@roopc.net>
* VPN: Fix deletion of tunnelsRoopesh Chander2018-10-291-1/+3
| | | | Signed-off-by: Roopesh Chander <roop@roopc.net>
* VPN: A tunnel may be already active on app startupRoopesh Chander2018-10-281-9/+21
| | | | Signed-off-by: Roopesh Chander <roop@roopc.net>
* VPN: Remove ability to deactivate the tunnel while resolving DNSRoopesh Chander2018-10-281-13/+7
| | | | Signed-off-by: Roopesh Chander <roop@roopc.net>
* VPN: DNSResolver: Resolve multiple endpoints in parallelRoopesh Chander2018-10-281-21/+32
| | | | Signed-off-by: Roopesh Chander <roop@roopc.net>
* VPN: Save the tunnel name when modifying a tunnelRoopesh Chander2018-10-281-0/+3
| | | | Signed-off-by: Roopesh Chander <roop@roopc.net>
* VPN: Cleaner derivation of subnet mask from CIDR network prefix lengthRoopesh Chander2018-10-281-14/+8
| | | | Signed-off-by: Roopesh Chander <roop@roopc.net>
* VPN: Better error and status handlingRoopesh Chander2018-10-271-73/+49
| | | | Signed-off-by: Roopesh Chander <roop@roopc.net>
* VPN: Bring up the tunnelRoopesh Chander2018-10-272-1/+183
| | | | | | | | | | The app figures out all settings and passes them in the 'options' parameter of startTunnel(). The network extension just takes them as is and just plugs the supplied values into the right places. Signed-off-by: Roopesh Chander <roop@roopc.net>
* VPN: Fix DNS resolution APIRoopesh Chander2018-10-272-9/+25
| | | | Signed-off-by: Roopesh Chander <roop@roopc.net>
* VPN: Perform DNS resolution before starting the tunnelRoopesh Chander2018-10-271-10/+29
| | | | Signed-off-by: Roopesh Chander <roop@roopc.net>
* VPN: DNSResolver: A class that does DNS resolution using getaddrinfoRoopesh Chander2018-10-271-0/+93
| | | | Signed-off-by: Roopesh Chander <roop@roopc.net>
* VPN: Activating, deactivating and tracking the statusRoopesh Chander2018-10-271-14/+159
| | | | Signed-off-by: Roopesh Chander <roop@roopc.net>
* Model: Add a version number to the tunnelRoopesh Chander2018-10-271-1/+2
| | | | Signed-off-by: Roopesh Chander <roop@roopc.net>
* VPN: Adding, modifying and deleting actual NETunnelProviderManager instancesRoopesh Chander2018-10-271-40/+141
| | | | Signed-off-by: Roopesh Chander <roop@roopc.net>
* Model: Allow creating an interface with empty nameRoopesh Chander2018-10-271-0/+1
| | | | | | | | 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.) Signed-off-by: Roopesh Chander <roop@roopc.net>
* VPN: Tunnel container shall provide direct access to the configuration objectRoopesh Chander2018-10-271-1/+4
| | | | Signed-off-by: Roopesh Chander <roop@roopc.net>
* Tunnel creation: After saving the new tunnel, show the detail viewRoopesh Chander2018-10-271-2/+2
| | | | Signed-off-by: Roopesh Chander <roop@roopc.net>
* Smaller copyright headersRoopesh Chander2018-10-271-7/+2
| | | | Signed-off-by: Roopesh Chander <roop@roopc.net>
* Tunnels list: Update when a tunnel is addedRoopesh Chander2018-10-271-0/+6
| | | | Signed-off-by: Roopesh Chander <roop@roopc.net>
* Model: Name should be part of the interface, not the tunnelRoopesh Chander2018-10-271-1/+1
| | | | Signed-off-by: Roopesh Chander <roop@roopc.net>
* VPN: Add TunnelsManager to manage the tunnels in the appRoopesh Chander2018-10-271-0/+82
Signed-off-by: Roopesh Chander <roop@roopc.net>