]> git.ipfire.org Git - thirdparty/wireguard-apple.git/commitdiff
macOS: Attempt to remove keychain item only if verified
authorRoopesh Chander <roop@roopc.net>
Thu, 4 Apr 2019 09:59:25 +0000 (15:29 +0530)
committerRoopesh Chander <roop@roopc.net>
Thu, 4 Apr 2019 09:59:25 +0000 (15:29 +0530)
Signed-off-by: Roopesh Chander <roop@roopc.net>
WireGuard/WireGuard/Tunnel/TunnelsManager.swift

index 3b976f4c40072b04ef7681cb637251989252b522..e50e4581a0ff3eaaa33188b895f50e3ecee55610 100644 (file)
@@ -245,7 +245,9 @@ class TunnelsManager {
 
     func remove(tunnel: TunnelContainer, completionHandler: @escaping (TunnelsManagerError?) -> Void) {
         let tunnelProviderManager = tunnel.tunnelProvider
-        (tunnelProviderManager.protocolConfiguration as? NETunnelProviderProtocol)?.destroyConfigurationReference()
+        if tunnel.isTunnelConfigurationAvailableInKeychain {
+            (tunnelProviderManager.protocolConfiguration as? NETunnelProviderProtocol)?.destroyConfigurationReference()
+        }
 
         tunnelProviderManager.removeFromPreferences { [weak self] error in
             guard error == nil else {