Attach user data to VPN configuration (#400)
This commit is contained in:
parent
bda84bf569
commit
c56bfd7224
|
@ -5,6 +5,12 @@ All notable changes to this project will be documented in this file.
|
||||||
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
||||||
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
||||||
|
|
||||||
|
## Unreleased
|
||||||
|
|
||||||
|
### Added
|
||||||
|
|
||||||
|
- Attach user data to VPN configuration. [#400](https://github.com/passepartoutvpn/tunnelkit/pull/400)
|
||||||
|
|
||||||
## 6.2.0 (2023-12-14)
|
## 6.2.0 (2023-12-14)
|
||||||
|
|
||||||
### Changed
|
### Changed
|
||||||
|
|
|
@ -6,8 +6,8 @@
|
||||||
"repositoryURL": "https://github.com/passepartoutvpn/openssl-apple",
|
"repositoryURL": "https://github.com/passepartoutvpn/openssl-apple",
|
||||||
"state": {
|
"state": {
|
||||||
"branch": null,
|
"branch": null,
|
||||||
"revision": "c15562540646602300df94540765fbe27b6d5474",
|
"revision": "026702febcaebcbf9ea68f2fa66b017eba998cdf",
|
||||||
"version": "3.2.0"
|
"version": "3.2.105"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -24,7 +24,7 @@
|
||||||
"repositoryURL": "https://github.com/passepartoutvpn/wireguard-apple",
|
"repositoryURL": "https://github.com/passepartoutvpn/wireguard-apple",
|
||||||
"state": {
|
"state": {
|
||||||
"branch": null,
|
"branch": null,
|
||||||
"revision": "57f9babde0fb7567f31a75e943538022f8725f8f",
|
"revision": "73d9152fa0cb661db0348a1ac11dbbf998422a50",
|
||||||
"version": "1.0.17"
|
"version": "1.0.17"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -41,6 +41,9 @@ public struct NetworkExtensionExtra {
|
||||||
/// Enables best-effort kill switch.
|
/// Enables best-effort kill switch.
|
||||||
public var killSwitch = false
|
public var killSwitch = false
|
||||||
|
|
||||||
|
/// Extra user configuration data.
|
||||||
|
public var userData: [String: Any]?
|
||||||
|
|
||||||
public init() {
|
public init() {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -140,6 +140,10 @@ public class NetworkExtensionVPN: VPN {
|
||||||
)
|
)
|
||||||
let managers = try await lookupAll()
|
let managers = try await lookupAll()
|
||||||
|
|
||||||
|
extra?.userData?.forEach {
|
||||||
|
proto.providerConfiguration?[$0.key] = $0.value
|
||||||
|
}
|
||||||
|
|
||||||
// install (new or existing) then callback
|
// install (new or existing) then callback
|
||||||
let targetManager = managers.first {
|
let targetManager = managers.first {
|
||||||
$0.isTunnel(withIdentifier: tunnelBundleIdentifier)
|
$0.isTunnel(withIdentifier: tunnelBundleIdentifier)
|
||||||
|
|
Loading…
Reference in New Issue