diff --git a/Passepartout.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved b/Passepartout.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved index b631e269..085685c3 100644 --- a/Passepartout.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved +++ b/Passepartout.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved @@ -51,7 +51,7 @@ "repositoryURL": "https://github.com/passepartoutvpn/tunnelkit", "state": { "branch": null, - "revision": "36ed23ccc4e6083d671b6b823f50787b018f2844", + "revision": "e2aaffc06f1d59a96e55e77d2a70d15c7f58b585", "version": null } }, diff --git a/PassepartoutLibrary/Package.swift b/PassepartoutLibrary/Package.swift index deb385f1..9d2e312b 100644 --- a/PassepartoutLibrary/Package.swift +++ b/PassepartoutLibrary/Package.swift @@ -24,7 +24,7 @@ let package = Package( // Dependencies declare other packages that this package depends on. // .package(url: /* package url */, from: "1.0.0"), // .package(name: "TunnelKit", url: "https://github.com/passepartoutvpn/tunnelkit", from: "4.1.0"), - .package(name: "TunnelKit", url: "https://github.com/passepartoutvpn/tunnelkit", .revision("36ed23ccc4e6083d671b6b823f50787b018f2844")), + .package(name: "TunnelKit", url: "https://github.com/passepartoutvpn/tunnelkit", .revision("e2aaffc06f1d59a96e55e77d2a70d15c7f58b585")), // .package(name: "TunnelKit", path: "../../tunnelkit"), .package(url: "https://github.com/zoul/generic-json-swift", from: "2.0.0"), .package(url: "https://github.com/SwiftyBeaver/SwiftyBeaver", from: "1.9.0") diff --git a/PassepartoutLibrary/Sources/PassepartoutCore/Managers/VPNManager.swift b/PassepartoutLibrary/Sources/PassepartoutCore/Managers/VPNManager.swift index c5da8c04..3112ba6b 100644 --- a/PassepartoutLibrary/Sources/PassepartoutCore/Managers/VPNManager.swift +++ b/PassepartoutLibrary/Sources/PassepartoutCore/Managers/VPNManager.swift @@ -45,6 +45,8 @@ public protocol VPNManager { @discardableResult func connect(with profileId: UUID, toServer newServerId: String) async throws -> Profile + func reconnect() async + func modifyActiveProfile(_ block: (inout Profile) -> Void) async throws func disable() async diff --git a/PassepartoutLibrary/Sources/PassepartoutVPN/Managers/DefaultVPNManager.swift b/PassepartoutLibrary/Sources/PassepartoutVPN/Managers/DefaultVPNManager.swift index 4207c44c..6a99d7fd 100644 --- a/PassepartoutLibrary/Sources/PassepartoutVPN/Managers/DefaultVPNManager.swift +++ b/PassepartoutLibrary/Sources/PassepartoutVPN/Managers/DefaultVPNManager.swift @@ -97,11 +97,17 @@ public class DefaultVPNManager