diff options
Diffstat (limited to '')
-rw-r--r-- | WireGuard/Shared/NETunnelProviderProtocol+Extension.swift | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/WireGuard/Shared/NETunnelProviderProtocol+Extension.swift b/WireGuard/Shared/NETunnelProviderProtocol+Extension.swift index 9f4af77..776e03b 100644 --- a/WireGuard/Shared/NETunnelProviderProtocol+Extension.swift +++ b/WireGuard/Shared/NETunnelProviderProtocol+Extension.swift @@ -37,4 +37,10 @@ extension NETunnelProviderProtocol { var isActivateOnDemandEnabled: Bool { return (providerConfiguration?["isActivateOnDemandEnabled"] as? Bool) ?? false } + + func hasTunnelConfiguration(tunnelConfiguration otherTunnelConfiguration: TunnelConfiguration) -> Bool { + guard let serializedThisTunnelConfiguration = providerConfiguration?["tunnelConfiguration"] as? Data else { return false } + guard let serializedOtherTunnelConfiguration = try? JSONEncoder().encode(otherTunnelConfiguration) else { return false } + return serializedThisTunnelConfiguration == serializedOtherTunnelConfiguration + } } |