]> git.ipfire.org Git - thirdparty/wireguard-apple.git/commitdiff
VPN: Start observing the status only if startTunnel() succeeds
authorRoopesh Chander <roop@roopc.net>
Sat, 3 Nov 2018 13:33:27 +0000 (19:03 +0530)
committerRoopesh Chander <roop@roopc.net>
Sat, 3 Nov 2018 13:52:30 +0000 (19:22 +0530)
This should fix the status change to .disconnected when we're resolving endpoints

Signed-off-by: Roopesh Chander <roop@roopc.net>
WireGuard/WireGuard/VPN/TunnelsManager.swift

index a36d5d030da247d03ce1577a3da2d015b933e1c0..05388cd445f971a87e72f30ccf7878356b8a98f9 100644 (file)
@@ -341,7 +341,6 @@ class TunnelContainer: NSObject {
         }
 
         // Start the tunnel
-        startObservingTunnelStatus()
         let session = (tunnelProvider.connection as! NETunnelProviderSession)
         do {
             os_log("startActivation: Generating options", log: OSLog.default, type: .debug)
@@ -350,6 +349,7 @@ class TunnelContainer: NSObject {
             os_log("startActivation: Starting tunnel", log: OSLog.default, type: .debug)
             try session.startTunnel(options: tunnelOptions)
             os_log("startActivation: Success", log: OSLog.default, type: .debug)
+            startObservingTunnelStatus()
             completionHandler(nil)
         } catch (let error) {
             os_log("startActivation: Error starting tunnel. Examining error", log: OSLog.default, type: .debug)