diff --git a/swift/apple/FirezoneKit/Sources/FirezoneKit/Managers/TunnelManager.swift b/swift/apple/FirezoneKit/Sources/FirezoneKit/Managers/TunnelManager.swift index 0a6c7baab..58556bf13 100644 --- a/swift/apple/FirezoneKit/Sources/FirezoneKit/Managers/TunnelManager.swift +++ b/swift/apple/FirezoneKit/Sources/FirezoneKit/Managers/TunnelManager.swift @@ -139,6 +139,13 @@ public class TunnelManager { public static let bundleIdentifier: String = "\(Bundle.main.bundleIdentifier!).network-extension" private let bundleDescription = "Firezone" + init() { + encoder.outputFormat = .binary + + // Hook up status updates + setupTunnelObservers() + } + // Initialize and save a new VPN profile in system Preferences func create() async throws { let protocolConfiguration = NETunnelProviderProtocol() @@ -150,7 +157,6 @@ public class TunnelManager { protocolConfiguration.serverAddress = settings.apiURL manager.localizedDescription = bundleDescription manager.protocolConfiguration = protocolConfiguration - encoder.outputFormat = .binary // Save the new VPN profile to System Preferences and reload it, // which should update our status from invalid -> disconnected. @@ -203,9 +209,6 @@ public class TunnelManager { } } - // Hook up status updates - setupTunnelObservers() - // If no tunnel configuration was found, update state to // prompt user to create one. if manager == nil {