]> git.ipfire.org Git - thirdparty/wireguard-apple.git/commitdiff
iOS/macOS: Integrate WireGuardKit
authorAndrej Mihajlov <and@mullvad.net>
Mon, 9 Nov 2020 09:52:06 +0000 (10:52 +0100)
committerAndrej Mihajlov <and@mullvad.net>
Wed, 2 Dec 2020 10:08:08 +0000 (11:08 +0100)
Signed-off-by: Andrej Mihajlov <and@mullvad.net>
25 files changed:
WireGuard/Shared/Logging/Logger.swift
WireGuard/Shared/Model/NETunnelProviderProtocol+Extension.swift
WireGuard/Shared/Model/TunnelConfiguration+WgQuickConfig.swift
WireGuard/WireGuard.xcodeproj/project.pbxproj
WireGuard/WireGuard.xcodeproj/project.xcworkspace/contents.xcworkspacedata
WireGuard/WireGuard.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved [new file with mode: 0644]
WireGuard/WireGuard/Crypto/Curve25519.swift
WireGuard/WireGuard/Tunnel/MockTunnels.swift
WireGuard/WireGuard/Tunnel/TunnelConfiguration+UapiConfig.swift
WireGuard/WireGuard/Tunnel/TunnelsManager.swift
WireGuard/WireGuard/UI/TunnelImporter.swift
WireGuard/WireGuard/UI/TunnelViewModel.swift
WireGuard/WireGuard/UI/iOS/ViewController/QRScanViewController.swift
WireGuard/WireGuard/UI/iOS/ViewController/SettingsTableViewController.swift
WireGuard/WireGuard/UI/iOS/ViewController/TunnelDetailTableViewController.swift
WireGuard/WireGuard/UI/iOS/ViewController/TunnelsListTableViewController.swift
WireGuard/WireGuard/UI/macOS/AppDelegate.swift
WireGuard/WireGuard/UI/macOS/ParseError+WireGuardAppError.swift
WireGuard/WireGuard/UI/macOS/ViewController/TunnelDetailTableViewController.swift
WireGuard/WireGuard/UI/macOS/ViewController/TunnelEditViewController.swift
WireGuard/WireGuard/WireGuard-Bridging-Header.h
WireGuard/WireGuard/ZipArchive/ZipExporter.swift
WireGuard/WireGuard/ZipArchive/ZipImporter.swift
WireGuard/WireGuardNetworkExtension/PacketTunnelProvider.swift
WireGuard/WireGuardNetworkExtension/WireGuardNetworkExtension-Bridging-Header.h

index 345fc100e312fc6f6e363b2d88593946d0396c19..eb144dc633acc12c1d0509983f5306131ed3b24d 100644 (file)
@@ -3,6 +3,7 @@
 
 import Foundation
 import os.log
+import WireGuardKit
 
 public class Logger {
     enum LoggerError: Error {
@@ -49,7 +50,7 @@ public class Logger {
         if let appBuild = Bundle.main.infoDictionary?["CFBundleVersion"] as? String {
             appVersion += " (\(appBuild))"
         }
-        let goBackendVersion = WIREGUARD_GO_VERSION
+        let goBackendVersion = getWireGuardVersion()
         Logger.global?.log(message: "App version: \(appVersion); Go backend version: \(goBackendVersion)")
     }
 }
index 7828d81a822b0ee56b708fba0ccb8bf34877d3e6..c75e9c53d208cf753bf20d57cd4e6f31716c38e3 100644 (file)
@@ -2,6 +2,7 @@
 // Copyright © 2018-2019 WireGuard LLC. All Rights Reserved.
 
 import NetworkExtension
+import WireGuardKit
 
 enum PacketTunnelProviderError: String, Error {
     case savedProtocolConfigurationIsInvalid
index 5e8f969f3ee620b9e6de92fd15b073e5c007d47a..d0c87e0b41c6bf37c7cb3a63010e9757ea1529e5 100644 (file)
@@ -2,6 +2,7 @@
 // Copyright © 2018-2019 WireGuard LLC. All Rights Reserved.
 
 import Foundation
+import WireGuardKit
 
 extension TunnelConfiguration {
 
index f5ab8621a2a90a291d316e38d072a77e195a2685..ec296eadd944c60e456ed7f8f489201c1ab7e542 100644 (file)
@@ -3,10 +3,16 @@
        archiveVersion = 1;
        classes = {
        };
-       objectVersion = 51;
+       objectVersion = 52;
        objects = {
 
 /* Begin PBXBuildFile section */
+               5892BF8F255581F6000E678D /* WireGuardKit in Frameworks */ = {isa = PBXBuildFile; productRef = 5892BF8E255581F6000E678D /* WireGuardKit */; };
+               5892BFA025558288000E678D /* PacketTunnelProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5892BF9F25558288000E678D /* PacketTunnelProvider.swift */; };
+               5892BFA125558288000E678D /* PacketTunnelProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5892BF9F25558288000E678D /* PacketTunnelProvider.swift */; };
+               5892BFDB25593F79000E678D /* WireGuardKit in Frameworks */ = {isa = PBXBuildFile; productRef = 5892BFDA25593F79000E678D /* WireGuardKit */; };
+               5892BFDD25593F80000E678D /* WireGuardKit in Frameworks */ = {isa = PBXBuildFile; productRef = 5892BFDC25593F80000E678D /* WireGuardKit */; };
+               5892BFF325594742000E678D /* WireGuardKit in Frameworks */ = {isa = PBXBuildFile; productRef = 5892BFF225594742000E678D /* WireGuardKit */; };
                5F45417D21C1B23600994C13 /* UITableViewCell+Reuse.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5F45417C21C1B23600994C13 /* UITableViewCell+Reuse.swift */; };
                5F45418C21C2D48200994C13 /* TunnelEditKeyValueCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5F45418B21C2D48200994C13 /* TunnelEditKeyValueCell.swift */; };
                5F45419021C2D53800994C13 /* SwitchCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5F45418F21C2D53800994C13 /* SwitchCell.swift */; };
                5F9696AE21CD6F72008063FE /* String+ArrayConversion.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5F4541B121CBFAEE00994C13 /* String+ArrayConversion.swift */; };
                5F9696B021CD7128008063FE /* TunnelConfiguration+WgQuickConfig.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5F9696AF21CD7128008063FE /* TunnelConfiguration+WgQuickConfig.swift */; };
                5F9696B121CD7128008063FE /* TunnelConfiguration+WgQuickConfig.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5F9696AF21CD7128008063FE /* TunnelConfiguration+WgQuickConfig.swift */; };
-               5FF7B96221CC95DE00A7DD74 /* InterfaceConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5FF7B96121CC95DE00A7DD74 /* InterfaceConfiguration.swift */; };
-               5FF7B96321CC95DE00A7DD74 /* InterfaceConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5FF7B96121CC95DE00A7DD74 /* InterfaceConfiguration.swift */; };
-               5FF7B96521CC95FA00A7DD74 /* PeerConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5FF7B96421CC95FA00A7DD74 /* PeerConfiguration.swift */; };
-               5FF7B96621CC95FA00A7DD74 /* PeerConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5FF7B96421CC95FA00A7DD74 /* PeerConfiguration.swift */; };
-               6B586C53220CBA6D00427C51 /* Data+KeyEncoding.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6B586C52220CBA6D00427C51 /* Data+KeyEncoding.swift */; };
-               6B586C54220CBA6D00427C51 /* Data+KeyEncoding.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6B586C52220CBA6D00427C51 /* Data+KeyEncoding.swift */; };
-               6B586C55220CBA6D00427C51 /* Data+KeyEncoding.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6B586C52220CBA6D00427C51 /* Data+KeyEncoding.swift */; };
-               6B586C56220CBA6D00427C51 /* Data+KeyEncoding.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6B586C52220CBA6D00427C51 /* Data+KeyEncoding.swift */; };
                6B5C5E27220A48D30024272E /* Keychain.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6B5C5E26220A48D30024272E /* Keychain.swift */; };
                6B5C5E28220A48D30024272E /* Keychain.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6B5C5E26220A48D30024272E /* Keychain.swift */; };
                6B5C5E29220A48D30024272E /* Keychain.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6B5C5E26220A48D30024272E /* Keychain.swift */; };
                6B6956362211DA80001B618A /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 6B6956352211DA80001B618A /* main.m */; };
                6B707D8421F918D4000A8F73 /* TunnelConfiguration+UapiConfig.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6B707D8321F918D4000A8F73 /* TunnelConfiguration+UapiConfig.swift */; };
                6B707D8621F918D4000A8F73 /* TunnelConfiguration+UapiConfig.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6B707D8321F918D4000A8F73 /* TunnelConfiguration+UapiConfig.swift */; };
-               6BD5C97B220D1AE200784E08 /* key.c in Sources */ = {isa = PBXBuildFile; fileRef = 6BD5C979220D1AE100784E08 /* key.c */; };
-               6BD5C97C220D1AE200784E08 /* key.c in Sources */ = {isa = PBXBuildFile; fileRef = 6BD5C979220D1AE100784E08 /* key.c */; };
-               6BD5C97D220D1AE200784E08 /* key.c in Sources */ = {isa = PBXBuildFile; fileRef = 6BD5C979220D1AE100784E08 /* key.c */; };
-               6BD5C97E220D1AE200784E08 /* key.c in Sources */ = {isa = PBXBuildFile; fileRef = 6BD5C979220D1AE100784E08 /* key.c */; };
                6F0F44C9222D55BB00B0FF04 /* TextCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F0F44C8222D55BB00B0FF04 /* TextCell.swift */; };
                6F0F44CB222D55FD00B0FF04 /* EditableTextCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F0F44CA222D55FD00B0FF04 /* EditableTextCell.swift */; };
                6F1075642258AE9800D78929 /* DeleteTunnelsConfirmationAlert.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F1075632258AE9800D78929 /* DeleteTunnelsConfirmationAlert.swift */; };
                6F19D30422402B8700A126F2 /* ConfirmationAlertPresenter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F19D30322402B8700A126F2 /* ConfirmationAlertPresenter.swift */; };
                6F2449E8226587B90047B9E9 /* MacAppStoreUpdateDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F2449E7226587B80047B9E9 /* MacAppStoreUpdateDetector.swift */; };
-               6F3E02E9228000F6001FE7E3 /* MainMenu.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F3E02E8228000F6001FE7E3 /* MainMenu.swift */; };
                6F29A9432278518D00DC6A6B /* RecentTunnelsTracker.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F29A9422278518D00DC6A6B /* RecentTunnelsTracker.swift */; };
                6F29A94722787B1600DC6A6B /* QuickActionItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F29A94622787B1600DC6A6B /* QuickActionItem.swift */; };
+               6F3E02E9228000F6001FE7E3 /* MainMenu.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F3E02E8228000F6001FE7E3 /* MainMenu.swift */; };
                6F4DD16B21DA558800690EAE /* TunnelListRow.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F4DD16A21DA558800690EAE /* TunnelListRow.swift */; };
                6F4DD16C21DA558F00690EAE /* NSTableView+Reuse.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F4DD16721DA552B00690EAE /* NSTableView+Reuse.swift */; };
                6F4DD16E21DBEA0700690EAE /* ManageTunnelsRootViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F4DD16D21DBEA0700690EAE /* ManageTunnelsRootViewController.swift */; };
                6F5A2B4621AFDED40081EDD8 /* FileManager+Extension.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F5A2B4421AFDE020081EDD8 /* FileManager+Extension.swift */; };
                6F5A2B4821AFF49A0081EDD8 /* FileManager+Extension.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F5A2B4421AFDE020081EDD8 /* FileManager+Extension.swift */; };
-               6F5D0C1D218352EF000F85AD /* PacketTunnelProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F5D0C1C218352EF000F85AD /* PacketTunnelProvider.swift */; };
                6F5D0C22218352EF000F85AD /* WireGuardNetworkExtension.appex in Embed App Extensions */ = {isa = PBXBuildFile; fileRef = 6F5D0C1A218352EF000F85AD /* WireGuardNetworkExtension.appex */; settings = {ATTRIBUTES = (RemoveHeadersOnCopy, ); }; };
                6F5EA59B223E58A8002B380A /* ButtonRow.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F5EA59A223E58A8002B380A /* ButtonRow.swift */; };
                6F613D9B21DE33B8004B217A /* KeyValueRow.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F613D9A21DE33B8004B217A /* KeyValueRow.swift */; };
                6F61F1E921B932F700483816 /* WireGuardAppError.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F61F1E821B932F700483816 /* WireGuardAppError.swift */; };
                6F61F1EB21B937EF00483816 /* WireGuardResult.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F61F1EA21B937EF00483816 /* WireGuardResult.swift */; };
                6F628C3D217F09E9003482A3 /* TunnelViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F628C3C217F09E9003482A3 /* TunnelViewModel.swift */; };
-               6F628C3F217F3413003482A3 /* DNSServer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F628C3E217F3413003482A3 /* DNSServer.swift */; };
                6F628C41217F47DB003482A3 /* TunnelDetailTableViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F628C40217F47DB003482A3 /* TunnelDetailTableViewController.swift */; };
                6F6483E7229293300075BA15 /* LaunchedAtLoginDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F6483E6229293300075BA15 /* LaunchedAtLoginDetector.swift */; };
                6F6899A62180447E0012E523 /* x25519.c in Sources */ = {isa = PBXBuildFile; fileRef = 6F6899A52180447E0012E523 /* x25519.c */; };
                6F6899A8218044FC0012E523 /* Curve25519.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F6899A7218044FC0012E523 /* Curve25519.swift */; };
-               6F693A562179E556008551C1 /* Endpoint.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F693A552179E556008551C1 /* Endpoint.swift */; };
                6F70E20E221058E1008BDFB4 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 6F70E20C221058DF008BDFB4 /* InfoPlist.strings */; };
                6F70E20F221058E1008BDFB4 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 6F70E20C221058DF008BDFB4 /* InfoPlist.strings */; };
                6F70E23D22109E15008BDFB4 /* WireGuardLoginItemHelper.app in Embed Login Item Helper */ = {isa = PBXBuildFile; fileRef = 6F70E22922106A2D008BDFB4 /* WireGuardLoginItemHelper.app */; settings = {ATTRIBUTES = (RemoveHeadersOnCopy, ); }; };
                6F7774E1217181B1006A79B3 /* MainViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F7774DF217181B1006A79B3 /* MainViewController.swift */; };
                6F7774E2217181B1006A79B3 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F7774E0217181B1006A79B3 /* AppDelegate.swift */; };
                6F7774E421718281006A79B3 /* TunnelsListTableViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F7774E321718281006A79B3 /* TunnelsListTableViewController.swift */; };
-               6F7774E82172020C006A79B3 /* TunnelConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F7774E72172020C006A79B3 /* TunnelConfiguration.swift */; };
-               6F7774EA217229DB006A79B3 /* IPAddressRange.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F7774E9217229DB006A79B3 /* IPAddressRange.swift */; };
                6F7774EF21722D97006A79B3 /* TunnelsManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F7774EE21722D97006A79B3 /* TunnelsManager.swift */; };
                6F7774F321774263006A79B3 /* TunnelEditTableViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F7774F221774263006A79B3 /* TunnelEditTableViewController.swift */; };
                6F7F7E5F21C7D74B00527607 /* TunnelErrors.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F7F7E5E21C7D74B00527607 /* TunnelErrors.swift */; };
                6FB1BD6021D2607A00A991BF /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6FB1BD5F21D2607A00A991BF /* AppDelegate.swift */; };
                6FB1BD6221D2607E00A991BF /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 6FB1BD6121D2607E00A991BF /* Assets.xcassets */; };
                6FB1BD9921D4BFE700A991BF /* WireGuardNetworkExtension.appex in Embed App Extensions */ = {isa = PBXBuildFile; fileRef = 6FB1BD9121D4BFE600A991BF /* WireGuardNetworkExtension.appex */; settings = {ATTRIBUTES = (RemoveHeadersOnCopy, ); }; };
-               6FB1BDA121D4E00A00A991BF /* libwg-go.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 6FB1BDA021D4E00A00A991BF /* libwg-go.a */; };
                6FB1BDA221D4F53300A991BF /* ringlogger.c in Sources */ = {isa = PBXBuildFile; fileRef = 6FF3526C21C23F960008484E /* ringlogger.c */; };
                6FB1BDA421D4F53300A991BF /* Logger.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6FF3526E21C23FA10008484E /* Logger.swift */; };
                6FB1BDA521D4F53300A991BF /* TunnelConfiguration+WgQuickConfig.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5F9696AF21CD7128008063FE /* TunnelConfiguration+WgQuickConfig.swift */; };
                6FB1BDA621D4F53300A991BF /* NETunnelProviderProtocol+Extension.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6FFA5D942194454A0001E2F7 /* NETunnelProviderProtocol+Extension.swift */; };
                6FB1BDA721D4F53300A991BF /* String+ArrayConversion.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5F4541B121CBFAEE00994C13 /* String+ArrayConversion.swift */; };
-               6FB1BDA921D4F53300A991BF /* TunnelConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F7774E72172020C006A79B3 /* TunnelConfiguration.swift */; };
-               6FB1BDAA21D4F53300A991BF /* IPAddressRange.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F7774E9217229DB006A79B3 /* IPAddressRange.swift */; };
-               6FB1BDAB21D4F53300A991BF /* Endpoint.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F693A552179E556008551C1 /* Endpoint.swift */; };
-               6FB1BDAC21D4F53300A991BF /* DNSServer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F628C3E217F3413003482A3 /* DNSServer.swift */; };
-               6FB1BDAD21D4F53300A991BF /* InterfaceConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5FF7B96121CC95DE00A7DD74 /* InterfaceConfiguration.swift */; };
-               6FB1BDAE21D4F53300A991BF /* PeerConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5FF7B96421CC95FA00A7DD74 /* PeerConfiguration.swift */; };
                6FB1BDAF21D4F53300A991BF /* FileManager+Extension.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F5A2B4421AFDE020081EDD8 /* FileManager+Extension.swift */; };
-               6FB1BDB021D4F55700A991BF /* PacketTunnelProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F5D0C1C218352EF000F85AD /* PacketTunnelProvider.swift */; };
-               6FB1BDB121D4F55700A991BF /* PacketTunnelSettingsGenerator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F5D0C472183C6A3000F85AD /* PacketTunnelSettingsGenerator.swift */; };
-               6FB1BDB221D4F55700A991BF /* DNSResolver.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F5D0C1421832391000F85AD /* DNSResolver.swift */; };
                6FB1BDB321D4F55700A991BF /* ErrorNotifier.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6FFA5D9F21958ECC0001E2F7 /* ErrorNotifier.swift */; };
                6FB1BDBB21D50F0200A991BF /* Localizable.strings in Sources */ = {isa = PBXBuildFile; fileRef = 6FE1765421C90BBE002690EA /* Localizable.strings */; };
                6FB1BDBC21D50F0200A991BF /* ringlogger.c in Sources */ = {isa = PBXBuildFile; fileRef = 6FF3526C21C23F960008484E /* ringlogger.c */; };
                6FB1BDBF21D50F0200A991BF /* TunnelConfiguration+WgQuickConfig.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5F9696AF21CD7128008063FE /* TunnelConfiguration+WgQuickConfig.swift */; };
                6FB1BDC021D50F0200A991BF /* NETunnelProviderProtocol+Extension.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6FFA5D942194454A0001E2F7 /* NETunnelProviderProtocol+Extension.swift */; };
                6FB1BDC121D50F0200A991BF /* String+ArrayConversion.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5F4541B121CBFAEE00994C13 /* String+ArrayConversion.swift */; };
-               6FB1BDC321D50F0300A991BF /* TunnelConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F7774E72172020C006A79B3 /* TunnelConfiguration.swift */; };
-               6FB1BDC421D50F0300A991BF /* IPAddressRange.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F7774E9217229DB006A79B3 /* IPAddressRange.swift */; };
-               6FB1BDC521D50F0300A991BF /* Endpoint.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F693A552179E556008551C1 /* Endpoint.swift */; };
-               6FB1BDC621D50F0300A991BF /* DNSServer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F628C3E217F3413003482A3 /* DNSServer.swift */; };
-               6FB1BDC721D50F0300A991BF /* InterfaceConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5FF7B96121CC95DE00A7DD74 /* InterfaceConfiguration.swift */; };
-               6FB1BDC821D50F0300A991BF /* PeerConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5FF7B96421CC95FA00A7DD74 /* PeerConfiguration.swift */; };
                6FB1BDC921D50F0300A991BF /* FileManager+Extension.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F5A2B4421AFDE020081EDD8 /* FileManager+Extension.swift */; };
                6FB1BDCA21D50F1700A991BF /* x25519.c in Sources */ = {isa = PBXBuildFile; fileRef = 6F6899A52180447E0012E523 /* x25519.c */; };
                6FB1BDCB21D50F1700A991BF /* Curve25519.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F6899A7218044FC0012E523 /* Curve25519.swift */; };
                6FDB6D13224A15BF00EE4BC3 /* LogViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6FDB6D12224A15BE00EE4BC3 /* LogViewController.swift */; };
                6FDB6D15224CB2CE00EE4BC3 /* LogViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6FDB6D14224CB2CE00EE4BC3 /* LogViewCell.swift */; };
                6FDB6D18224CC05A00EE4BC3 /* LogViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6FDB6D16224CC04E00EE4BC3 /* LogViewController.swift */; };
-               6FDEF7E421846C1A00D8FBF6 /* libwg-go.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 6FDEF7E321846C1A00D8FBF6 /* libwg-go.a */; };
                6FDEF7E62185EFB200D8FBF6 /* QRScanViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6FDEF7E52185EFAF00D8FBF6 /* QRScanViewController.swift */; };
                6FDEF7FB21863B6100D8FBF6 /* unzip.c in Sources */ = {isa = PBXBuildFile; fileRef = 6FDEF7F621863B6100D8FBF6 /* unzip.c */; };
                6FDEF7FC21863B6100D8FBF6 /* zip.c in Sources */ = {isa = PBXBuildFile; fileRef = 6FDEF7F721863B6100D8FBF6 /* zip.c */; };
                6FF3527321C2616C0008484E /* Logger.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6FF3526E21C23FA10008484E /* Logger.swift */; };
                6FF4AC1F211EC472002C96EB /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 6FF4AC1E211EC472002C96EB /* Assets.xcassets */; };
                6FF4AC22211EC472002C96EB /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 6FF4AC20211EC472002C96EB /* LaunchScreen.storyboard */; };
-               6FFA5D8921942F320001E2F7 /* PacketTunnelSettingsGenerator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F5D0C472183C6A3000F85AD /* PacketTunnelSettingsGenerator.swift */; };
-               6FFA5D8E2194370D0001E2F7 /* TunnelConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F7774E72172020C006A79B3 /* TunnelConfiguration.swift */; };
-               6FFA5D8F2194370D0001E2F7 /* IPAddressRange.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F7774E9217229DB006A79B3 /* IPAddressRange.swift */; };
-               6FFA5D902194370D0001E2F7 /* Endpoint.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F693A552179E556008551C1 /* Endpoint.swift */; };
-               6FFA5D912194370D0001E2F7 /* DNSServer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F628C3E217F3413003482A3 /* DNSServer.swift */; };
-               6FFA5D9321943BC90001E2F7 /* DNSResolver.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F5D0C1421832391000F85AD /* DNSResolver.swift */; };
                6FFA5D952194454A0001E2F7 /* NETunnelProviderProtocol+Extension.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6FFA5D942194454A0001E2F7 /* NETunnelProviderProtocol+Extension.swift */; };
                6FFA5D96219446380001E2F7 /* NETunnelProviderProtocol+Extension.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6FFA5D942194454A0001E2F7 /* NETunnelProviderProtocol+Extension.swift */; };
                6FFA5DA021958ECC0001E2F7 /* ErrorNotifier.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6FFA5D9F21958ECC0001E2F7 /* ErrorNotifier.swift */; };
 /* End PBXBuildFile section */
 
 /* Begin PBXContainerItemProxy section */
+               5892BFC525593F0C000E678D /* PBXContainerItemProxy */ = {
+                       isa = PBXContainerItemProxy;
+                       containerPortal = 6FF4AC0C211EC46F002C96EB /* Project object */;
+                       proxyType = 1;
+                       remoteGlobalIDString = 6FDAA03421CE69D000FA6925;
+                       remoteInfo = WireGuardGoBridgemacOS;
+               };
                6F5D0C20218352EF000F85AD /* PBXContainerItemProxy */ = {
                        isa = PBXContainerItemProxy;
                        containerPortal = 6FF4AC0C211EC46F002C96EB /* Project object */;
 /* End PBXCopyFilesBuildPhase section */
 
 /* Begin PBXFileReference section */
+               5892BF9F25558288000E678D /* PacketTunnelProvider.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PacketTunnelProvider.swift; sourceTree = "<group>"; };
                5F45417C21C1B23600994C13 /* UITableViewCell+Reuse.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "UITableViewCell+Reuse.swift"; sourceTree = "<group>"; };
                5F45418B21C2D48200994C13 /* TunnelEditKeyValueCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TunnelEditKeyValueCell.swift; sourceTree = "<group>"; };
                5F45418F21C2D53800994C13 /* SwitchCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SwitchCell.swift; sourceTree = "<group>"; };
                5F52D0C021E378C000283CEA /* highlighter.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = highlighter.h; sourceTree = "<group>"; };
                5F52D0C121E378C000283CEA /* highlighter.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = highlighter.c; sourceTree = "<group>"; };
                5F9696AF21CD7128008063FE /* TunnelConfiguration+WgQuickConfig.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "TunnelConfiguration+WgQuickConfig.swift"; sourceTree = "<group>"; };
-               5FF7B96121CC95DE00A7DD74 /* InterfaceConfiguration.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = InterfaceConfiguration.swift; sourceTree = "<group>"; };
-               5FF7B96421CC95FA00A7DD74 /* PeerConfiguration.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PeerConfiguration.swift; sourceTree = "<group>"; };
-               6B586C52220CBA6D00427C51 /* Data+KeyEncoding.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "Data+KeyEncoding.swift"; sourceTree = "<group>"; };
                6B5C5E26220A48D30024272E /* Keychain.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Keychain.swift; sourceTree = "<group>"; };
                6B62E45E220A6FA900EF34A6 /* PrivateDataConfirmation.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PrivateDataConfirmation.swift; sourceTree = "<group>"; };
                6B6956352211DA80001B618A /* main.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = "<group>"; };
                6B707D8321F918D4000A8F73 /* TunnelConfiguration+UapiConfig.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "TunnelConfiguration+UapiConfig.swift"; sourceTree = "<group>"; };
-               6BD5C979220D1AE100784E08 /* key.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = key.c; sourceTree = "<group>"; };
-               6BD5C97A220D1AE200784E08 /* key.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = key.h; sourceTree = "<group>"; };
                6F0F44C8222D55BB00B0FF04 /* TextCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TextCell.swift; sourceTree = "<group>"; };
                6F0F44CA222D55FD00B0FF04 /* EditableTextCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EditableTextCell.swift; sourceTree = "<group>"; };
                6F1075632258AE9800D78929 /* DeleteTunnelsConfirmationAlert.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DeleteTunnelsConfirmationAlert.swift; sourceTree = "<group>"; };
                6F16F46F243DB55600AA141B /* ja */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ja; path = WireGuard/ja.lproj/Localizable.strings; sourceTree = "<group>"; };
                6F19D30322402B8700A126F2 /* ConfirmationAlertPresenter.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ConfirmationAlertPresenter.swift; sourceTree = "<group>"; };
                6F2449E7226587B80047B9E9 /* MacAppStoreUpdateDetector.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MacAppStoreUpdateDetector.swift; sourceTree = "<group>"; };
-               6F3E02E8228000F6001FE7E3 /* MainMenu.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MainMenu.swift; sourceTree = "<group>"; };
                6F29A9422278518D00DC6A6B /* RecentTunnelsTracker.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RecentTunnelsTracker.swift; sourceTree = "<group>"; };
                6F29A94622787B1600DC6A6B /* QuickActionItem.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = QuickActionItem.swift; sourceTree = "<group>"; };
+               6F3E02E8228000F6001FE7E3 /* MainMenu.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MainMenu.swift; sourceTree = "<group>"; };
                6F4DD16721DA552B00690EAE /* NSTableView+Reuse.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "NSTableView+Reuse.swift"; sourceTree = "<group>"; };
                6F4DD16A21DA558800690EAE /* TunnelListRow.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TunnelListRow.swift; sourceTree = "<group>"; };
                6F4DD16D21DBEA0700690EAE /* ManageTunnelsRootViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ManageTunnelsRootViewController.swift; sourceTree = "<group>"; };
                6F5A2B4421AFDE020081EDD8 /* FileManager+Extension.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "FileManager+Extension.swift"; sourceTree = "<group>"; };
-               6F5D0C1421832391000F85AD /* DNSResolver.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DNSResolver.swift; sourceTree = "<group>"; };
                6F5D0C1A218352EF000F85AD /* WireGuardNetworkExtension.appex */ = {isa = PBXFileReference; explicitFileType = "wrapper.app-extension"; includeInIndex = 0; path = WireGuardNetworkExtension.appex; sourceTree = BUILT_PRODUCTS_DIR; };
-               6F5D0C1C218352EF000F85AD /* PacketTunnelProvider.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PacketTunnelProvider.swift; sourceTree = "<group>"; };
                6F5D0C1E218352EF000F85AD /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
                6F5D0C1F218352EF000F85AD /* WireGuardNetworkExtension_iOS.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = WireGuardNetworkExtension_iOS.entitlements; sourceTree = "<group>"; };
                6F5D0C3421839E37000F85AD /* WireGuardNetworkExtension-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "WireGuardNetworkExtension-Bridging-Header.h"; sourceTree = "<group>"; };
-               6F5D0C472183C6A3000F85AD /* PacketTunnelSettingsGenerator.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PacketTunnelSettingsGenerator.swift; sourceTree = "<group>"; };
                6F5EA59A223E58A8002B380A /* ButtonRow.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ButtonRow.swift; sourceTree = "<group>"; };
                6F613D9A21DE33B8004B217A /* KeyValueRow.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = KeyValueRow.swift; sourceTree = "<group>"; };
                6F61F1E821B932F700483816 /* WireGuardAppError.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WireGuardAppError.swift; sourceTree = "<group>"; };
                6F61F1EA21B937EF00483816 /* WireGuardResult.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WireGuardResult.swift; sourceTree = "<group>"; };
                6F628C3C217F09E9003482A3 /* TunnelViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TunnelViewModel.swift; sourceTree = "<group>"; };
-               6F628C3E217F3413003482A3 /* DNSServer.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DNSServer.swift; sourceTree = "<group>"; };
                6F628C40217F47DB003482A3 /* TunnelDetailTableViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = TunnelDetailTableViewController.swift; sourceTree = "<group>"; };
                6F6483E6229293300075BA15 /* LaunchedAtLoginDetector.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LaunchedAtLoginDetector.swift; sourceTree = "<group>"; };
                6F689999218043390012E523 /* WireGuard-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "WireGuard-Bridging-Header.h"; sourceTree = "<group>"; };
                6F6899A42180447E0012E523 /* x25519.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = x25519.h; sourceTree = "<group>"; };
                6F6899A52180447E0012E523 /* x25519.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = x25519.c; sourceTree = "<group>"; };
                6F6899A7218044FC0012E523 /* Curve25519.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Curve25519.swift; sourceTree = "<group>"; };
-               6F693A552179E556008551C1 /* Endpoint.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Endpoint.swift; sourceTree = "<group>"; };
                6F70E20D221058DF008BDFB4 /* Base */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = Base; path = WireGuard/Base.lproj/InfoPlist.strings; sourceTree = "<group>"; };
                6F70E22922106A2D008BDFB4 /* WireGuardLoginItemHelper.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = WireGuardLoginItemHelper.app; sourceTree = BUILT_PRODUCTS_DIR; };
                6F70E23222106A31008BDFB4 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
                6F7774DF217181B1006A79B3 /* MainViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MainViewController.swift; sourceTree = "<group>"; };
                6F7774E0217181B1006A79B3 /* AppDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = "<group>"; };
                6F7774E321718281006A79B3 /* TunnelsListTableViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = TunnelsListTableViewController.swift; sourceTree = "<group>"; };
-               6F7774E72172020C006A79B3 /* TunnelConfiguration.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TunnelConfiguration.swift; sourceTree = "<group>"; };
-               6F7774E9217229DB006A79B3 /* IPAddressRange.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = IPAddressRange.swift; sourceTree = "<group>"; };
                6F7774EE21722D97006A79B3 /* TunnelsManager.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TunnelsManager.swift; sourceTree = "<group>"; };
                6F7774F221774263006A79B3 /* TunnelEditTableViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TunnelEditTableViewController.swift; sourceTree = "<group>"; };
                6F7F7E5E21C7D74B00527607 /* TunnelErrors.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TunnelErrors.swift; sourceTree = "<group>"; };
                6FB1BD6721D2607E00A991BF /* WireGuard.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = WireGuard.entitlements; sourceTree = "<group>"; };
                6FB1BD9121D4BFE600A991BF /* WireGuardNetworkExtension.appex */ = {isa = PBXFileReference; explicitFileType = "wrapper.app-extension"; includeInIndex = 0; path = WireGuardNetworkExtension.appex; sourceTree = BUILT_PRODUCTS_DIR; };
                6FB1BD9621D4BFE700A991BF /* WireGuardNetworkExtension_macOS.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = WireGuardNetworkExtension_macOS.entitlements; sourceTree = "<group>"; };
-               6FB1BDA021D4E00A00A991BF /* libwg-go.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = "libwg-go.a"; sourceTree = BUILT_PRODUCTS_DIR; };
                6FB1BDB621D4F8B800A991BF /* NetworkExtension.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = NetworkExtension.framework; path = Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/System/Library/Frameworks/NetworkExtension.framework; sourceTree = DEVELOPER_DIR; };
                6FBA101321D613F30051C35F /* Application.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Application.swift; sourceTree = "<group>"; };
                6FBA101621D655340051C35F /* StatusMenu.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StatusMenu.swift; sourceTree = "<group>"; };
                6FDB6D12224A15BE00EE4BC3 /* LogViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = LogViewController.swift; sourceTree = "<group>"; };
                6FDB6D14224CB2CE00EE4BC3 /* LogViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LogViewCell.swift; sourceTree = "<group>"; };
                6FDB6D16224CC04E00EE4BC3 /* LogViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LogViewController.swift; sourceTree = "<group>"; };
-               6FDEF7E321846C1A00D8FBF6 /* libwg-go.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; path = "libwg-go.a"; sourceTree = BUILT_PRODUCTS_DIR; };
                6FDEF7E52185EFAF00D8FBF6 /* QRScanViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = QRScanViewController.swift; sourceTree = "<group>"; };
                6FDEF7F621863B6100D8FBF6 /* unzip.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = unzip.c; sourceTree = "<group>"; };
                6FDEF7F721863B6100D8FBF6 /* zip.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = zip.c; sourceTree = "<group>"; };
                        isa = PBXFrameworksBuildPhase;
                        buildActionMask = 2147483647;
                        files = (
+                               5892BFF325594742000E678D /* WireGuardKit in Frameworks */,
                                6B5CA6B1220DE4E900F126CF /* NetworkExtension.framework in Frameworks */,
-                               6FDEF7E421846C1A00D8FBF6 /* libwg-go.a in Frameworks */,
                        );
                        runOnlyForDeploymentPostprocessing = 0;
                };
                        isa = PBXFrameworksBuildPhase;
                        buildActionMask = 2147483647;
                        files = (
+                               5892BFDD25593F80000E678D /* WireGuardKit in Frameworks */,
                                6FB1BDDA21D5170800A991BF /* NetworkExtension.framework in Frameworks */,
                        );
                        runOnlyForDeploymentPostprocessing = 0;
                        isa = PBXFrameworksBuildPhase;
                        buildActionMask = 2147483647;
                        files = (
+                               5892BFDB25593F79000E678D /* WireGuardKit in Frameworks */,
                                6B5CA6B2220DE4F400F126CF /* NetworkExtension.framework in Frameworks */,
-                               6FB1BDA121D4E00A00A991BF /* libwg-go.a in Frameworks */,
                        );
                        runOnlyForDeploymentPostprocessing = 0;
                };
                        isa = PBXFrameworksBuildPhase;
                        buildActionMask = 2147483647;
                        files = (
+                               5892BF8F255581F6000E678D /* WireGuardKit in Frameworks */,
                                6B653B86220DE2960050E69C /* NetworkExtension.framework in Frameworks */,
                        );
                        runOnlyForDeploymentPostprocessing = 0;
                6F5D0C1B218352EF000F85AD /* WireGuardNetworkExtension */ = {
                        isa = PBXGroup;
                        children = (
-                               6F5D0C1C218352EF000F85AD /* PacketTunnelProvider.swift */,
-                               6F5D0C472183C6A3000F85AD /* PacketTunnelSettingsGenerator.swift */,
-                               6F5D0C1421832391000F85AD /* DNSResolver.swift */,
                                6F5D0C1E218352EF000F85AD /* Info.plist */,
                                6F5D0C1F218352EF000F85AD /* WireGuardNetworkExtension_iOS.entitlements */,
                                6FB1BD9621D4BFE700A991BF /* WireGuardNetworkExtension_macOS.entitlements */,
                                6F5D0C3421839E37000F85AD /* WireGuardNetworkExtension-Bridging-Header.h */,
                                6FFA5D9F21958ECC0001E2F7 /* ErrorNotifier.swift */,
+                               5892BF9F25558288000E678D /* PacketTunnelProvider.swift */,
                        );
                        path = WireGuardNetworkExtension;
                        sourceTree = "<group>";
                6F7774E6217201E0006A79B3 /* Model */ = {
                        isa = PBXGroup;
                        children = (
-                               6BD5C979220D1AE100784E08 /* key.c */,
-                               6BD5C97A220D1AE200784E08 /* key.h */,
                                5F9696AF21CD7128008063FE /* TunnelConfiguration+WgQuickConfig.swift */,
                                6FFA5D942194454A0001E2F7 /* NETunnelProviderProtocol+Extension.swift */,
                                5F4541B121CBFAEE00994C13 /* String+ArrayConversion.swift */,
-                               6F7774E72172020C006A79B3 /* TunnelConfiguration.swift */,
-                               6F7774E9217229DB006A79B3 /* IPAddressRange.swift */,
-                               6F693A552179E556008551C1 /* Endpoint.swift */,
-                               6F628C3E217F3413003482A3 /* DNSServer.swift */,
-                               5FF7B96121CC95DE00A7DD74 /* InterfaceConfiguration.swift */,
-                               5FF7B96421CC95FA00A7DD74 /* PeerConfiguration.swift */,
-                               6B586C52220CBA6D00427C51 /* Data+KeyEncoding.swift */,
                        );
                        path = Model;
                        sourceTree = "<group>";
                        isa = PBXGroup;
                        children = (
                                6FB1BDB621D4F8B800A991BF /* NetworkExtension.framework */,
-                               6FDEF7E321846C1A00D8FBF6 /* libwg-go.a */,
-                               6FB1BDA021D4E00A00A991BF /* libwg-go.a */,
                                6FF4AC462120B9E0002C96EB /* NetworkExtension.framework */,
                        );
                        name = Frameworks;
                        buildPhases = (
                        );
                        buildToolPath = /usr/bin/make;
-                       buildWorkingDirectory = "$(PROJECT_DIR)/../wireguard-go-bridge";
+                       buildWorkingDirectory = "$BUILD_DIR/../../SourcePackages/checkouts/wireguard-apple/wireguard-go-bridge";
                        dependencies = (
                        );
                        name = WireGuardGoBridgemacOS;
                        buildPhases = (
                        );
                        buildToolPath = /usr/bin/make;
-                       buildWorkingDirectory = "$(PROJECT_DIR)/../wireguard-go-bridge";
+                       buildWorkingDirectory = "$BUILD_DIR/../../SourcePackages/checkouts/wireguard-apple/wireguard-go-bridge";
                        dependencies = (
                        );
                        name = WireGuardGoBridgeiOS;
                        buildConfigurationList = 6F5D0C25218352EF000F85AD /* Build configuration list for PBXNativeTarget "WireGuardNetworkExtensioniOS" */;
                        buildPhases = (
                                5F45417B21C0906F00994C13 /* Swiftlint */,
-                               6F61F1EC21BA4D4700483816 /* Extract wireguard-go Version */,
                                6F5D0C16218352EF000F85AD /* Sources */,
                                6F5D0C17218352EF000F85AD /* Frameworks */,
                                6F5D0C18218352EF000F85AD /* Resources */,
                                6FDEF7E221846C0000D8FBF6 /* PBXTargetDependency */,
                        );
                        name = WireGuardNetworkExtensioniOS;
+                       packageProductDependencies = (
+                               5892BFF225594742000E678D /* WireGuardKit */,
+                       );
                        productName = WireGuardNetworkExtension;
                        productReference = 6F5D0C1A218352EF000F85AD /* WireGuardNetworkExtension.appex */;
                        productType = "com.apple.product-type.app-extension";
                        buildRules = (
                        );
                        dependencies = (
+                               5892BFC625593F0C000E678D /* PBXTargetDependency */,
                                6F70E23B22109DD3008BDFB4 /* PBXTargetDependency */,
                                6FB1BD9821D4BFE700A991BF /* PBXTargetDependency */,
                        );
                        name = WireGuardmacOS;
+                       packageProductDependencies = (
+                               5892BFDC25593F80000E678D /* WireGuardKit */,
+                       );
                        productName = WireGuardmacOS;
                        productReference = 6FB1BD5D21D2607A00A991BF /* WireGuard.app */;
                        productType = "com.apple.product-type.application";
                        buildConfigurationList = 6FB1BD9C21D4BFE700A991BF /* Build configuration list for PBXNativeTarget "WireGuardNetworkExtensionmacOS" */;
                        buildPhases = (
                                6FB1BDB421D4F5CF00A991BF /* Swiftlint */,
-                               6FB1BDB521D4F61C00A991BF /* Extract wireguard-go Version */,
                                6FB1BD8D21D4BFE600A991BF /* Sources */,
                                6FB1BD8E21D4BFE600A991BF /* Frameworks */,
                                6FB1BD8F21D4BFE600A991BF /* Resources */,
                                6FB1BD9F21D4DF7A00A991BF /* PBXTargetDependency */,
                        );
                        name = WireGuardNetworkExtensionmacOS;
+                       packageProductDependencies = (
+                               5892BFDA25593F79000E678D /* WireGuardKit */,
+                       );
                        productName = WireGuardNetworkExtension;
                        productReference = 6FB1BD9121D4BFE600A991BF /* WireGuardNetworkExtension.appex */;
                        productType = "com.apple.product-type.app-extension";
                                6F5D0C21218352EF000F85AD /* PBXTargetDependency */,
                        );
                        name = WireGuardiOS;
+                       packageProductDependencies = (
+                               5892BF8E255581F6000E678D /* WireGuardKit */,
+                       );
                        productName = WireGuard;
                        productReference = 6FF4AC14211EC46F002C96EB /* WireGuard.app */;
                        productType = "com.apple.product-type.application";
                                de,
                        );
                        mainGroup = 6FF4AC0B211EC46F002C96EB;
+                       packageReferences = (
+                               5892BF8D255581F6000E678D /* XCRemoteSwiftPackageReference "wireguard-apple" */,
+                       );
                        productRefGroup = 6FF4AC15211EC46F002C96EB /* Products */;
                        projectDirPath = "";
                        projectRoot = "";
                        shellScript = "exec make -C \"$PROJECT_DIR/../wireguard-go-bridge\" version-header\n";
                        showEnvVarsInLog = 0;
                };
-               6F61F1EC21BA4D4700483816 /* Extract wireguard-go Version */ = {
-                       isa = PBXShellScriptBuildPhase;
-                       buildActionMask = 2147483647;
-                       files = (
-                       );
-                       inputFileListPaths = (
-                       );
-                       inputPaths = (
-                       );
-                       name = "Extract wireguard-go Version";
-                       outputFileListPaths = (
-                       );
-                       outputPaths = (
-                       );
-                       runOnlyForDeploymentPostprocessing = 0;
-                       shellPath = /bin/sh;
-                       shellScript = "exec make -C \"$PROJECT_DIR/../wireguard-go-bridge\" version-header\n";
-                       showEnvVarsInLog = 0;
-               };
                6FB1BDB421D4F5CF00A991BF /* Swiftlint */ = {
                        isa = PBXShellScriptBuildPhase;
                        buildActionMask = 2147483647;
                        shellPath = /bin/sh;
                        shellScript = "if which swiftlint >/dev/null; then\nswiftlint\nelse\necho \"warning: SwiftLint not installed, download from https://github.com/realm/SwiftLint\"\nfi\n";
                };
-               6FB1BDB521D4F61C00A991BF /* Extract wireguard-go Version */ = {
-                       isa = PBXShellScriptBuildPhase;
-                       buildActionMask = 2147483647;
-                       files = (
-                       );
-                       inputFileListPaths = (
-                       );
-                       inputPaths = (
-                       );
-                       name = "Extract wireguard-go Version";
-                       outputFileListPaths = (
-                       );
-                       outputPaths = (
-                       );
-                       runOnlyForDeploymentPostprocessing = 0;
-                       shellPath = /bin/sh;
-                       shellScript = "exec make -C \"$PROJECT_DIR/../wireguard-go-bridge\" version-header\n";
-                       showEnvVarsInLog = 0;
-               };
                6FB1BDB821D4FA9100A991BF /* Strip Trailing Whitespace */ = {
                        isa = PBXShellScriptBuildPhase;
                        buildActionMask = 2147483647;
                                5F9696B121CD7128008063FE /* TunnelConfiguration+WgQuickConfig.swift in Sources */,
                                6B5C5E28220A48D30024272E /* Keychain.swift in Sources */,
                                6FFA5D96219446380001E2F7 /* NETunnelProviderProtocol+Extension.swift in Sources */,
-                               6FFA5D8E2194370D0001E2F7 /* TunnelConfiguration.swift in Sources */,
-                               5FF7B96621CC95FA00A7DD74 /* PeerConfiguration.swift in Sources */,
                                5F9696AE21CD6F72008063FE /* String+ArrayConversion.swift in Sources */,
-                               6FFA5D8F2194370D0001E2F7 /* IPAddressRange.swift in Sources */,
-                               6B586C54220CBA6D00427C51 /* Data+KeyEncoding.swift in Sources */,
-                               6FFA5D902194370D0001E2F7 /* Endpoint.swift in Sources */,
-                               5FF7B96321CC95DE00A7DD74 /* InterfaceConfiguration.swift in Sources */,
-                               6FFA5D9321943BC90001E2F7 /* DNSResolver.swift in Sources */,
-                               6BD5C97C220D1AE200784E08 /* key.c in Sources */,
-                               6FFA5D912194370D0001E2F7 /* DNSServer.swift in Sources */,
-                               6FFA5D8921942F320001E2F7 /* PacketTunnelSettingsGenerator.swift in Sources */,
-                               6F5D0C1D218352EF000F85AD /* PacketTunnelProvider.swift in Sources */,
+                               5892BFA025558288000E678D /* PacketTunnelProvider.swift in Sources */,
                        );
                        runOnlyForDeploymentPostprocessing = 0;
                };
                                6FDB3C3B21DCF47400A0C0BF /* TunnelDetailTableViewController.swift in Sources */,
                                6FB1BDD721D50F5300A991BF /* WireGuardAppError.swift in Sources */,
                                5F52D0BD21E3785C00283CEA /* ConfTextStorage.swift in Sources */,
-                               6BD5C97D220D1AE200784E08 /* key.c in Sources */,
                                5F52D0C221E378C000283CEA /* highlighter.c in Sources */,
                                6F4DD16E21DBEA0700690EAE /* ManageTunnelsRootViewController.swift in Sources */,
                                6F4DD16C21DA558F00690EAE /* NSTableView+Reuse.swift in Sources */,
                                6FCD99B121E0EDA900BA4C82 /* TunnelEditViewController.swift in Sources */,
                                6FB1BDCA21D50F1700A991BF /* x25519.c in Sources */,
                                6FB1BDCB21D50F1700A991BF /* Curve25519.swift in Sources */,
-                               6B586C55220CBA6D00427C51 /* Data+KeyEncoding.swift in Sources */,
                                6FB17946222FD5960018AE71 /* OnDemandWiFiControls.swift in Sources */,
                                6FB1BDBB21D50F0200A991BF /* Localizable.strings in Sources */,
                                6FB1BDBC21D50F0200A991BF /* ringlogger.c in Sources */,
                                5F52D0BB21E3781B00283CEA /* ConfTextView.swift in Sources */,
                                6FBA104021D6B7040051C35F /* ErrorPresenterProtocol.swift in Sources */,
                                6FCD99AA21E0E14700BA4C82 /* ButtonedDetailViewController.swift in Sources */,
-                               6FB1BDC321D50F0300A991BF /* TunnelConfiguration.swift in Sources */,
-                               6FB1BDC421D50F0300A991BF /* IPAddressRange.swift in Sources */,
                                6FBA104321D6BC250051C35F /* ErrorPresenter.swift in Sources */,
-                               6FB1BDC521D50F0300A991BF /* Endpoint.swift in Sources */,
-                               6FB1BDC621D50F0300A991BF /* DNSServer.swift in Sources */,
                                6F2449E8226587B90047B9E9 /* MacAppStoreUpdateDetector.swift in Sources */,
-                               6FB1BDC721D50F0300A991BF /* InterfaceConfiguration.swift in Sources */,
                                6F907C9D224663A2003CED21 /* LogViewHelper.swift in Sources */,
-                               6FB1BDC821D50F0300A991BF /* PeerConfiguration.swift in Sources */,
                                6FB1BDC921D50F0300A991BF /* FileManager+Extension.swift in Sources */,
                                6FB1BD6021D2607A00A991BF /* AppDelegate.swift in Sources */,
                        );
                        isa = PBXSourcesBuildPhase;
                        buildActionMask = 2147483647;
                        files = (
-                               6FB1BDB021D4F55700A991BF /* PacketTunnelProvider.swift in Sources */,
-                               6FB1BDB121D4F55700A991BF /* PacketTunnelSettingsGenerator.swift in Sources */,
-                               6FB1BDB221D4F55700A991BF /* DNSResolver.swift in Sources */,
                                6FB1BDB321D4F55700A991BF /* ErrorNotifier.swift in Sources */,
                                6FB1BDA221D4F53300A991BF /* ringlogger.c in Sources */,
                                6B5C5E2A220A48D30024272E /* Keychain.swift in Sources */,
                                6FB1BDA521D4F53300A991BF /* TunnelConfiguration+WgQuickConfig.swift in Sources */,
                                6FB1BDA621D4F53300A991BF /* NETunnelProviderProtocol+Extension.swift in Sources */,
                                6FB1BDA721D4F53300A991BF /* String+ArrayConversion.swift in Sources */,
-                               6FB1BDA921D4F53300A991BF /* TunnelConfiguration.swift in Sources */,
-                               6B586C56220CBA6D00427C51 /* Data+KeyEncoding.swift in Sources */,
-                               6FB1BDAA21D4F53300A991BF /* IPAddressRange.swift in Sources */,
-                               6FB1BDAB21D4F53300A991BF /* Endpoint.swift in Sources */,
-                               6FB1BDAC21D4F53300A991BF /* DNSServer.swift in Sources */,
-                               6BD5C97E220D1AE200784E08 /* key.c in Sources */,
-                               6FB1BDAD21D4F53300A991BF /* InterfaceConfiguration.swift in Sources */,
-                               6FB1BDAE21D4F53300A991BF /* PeerConfiguration.swift in Sources */,
+                               5892BFA125558288000E678D /* PacketTunnelProvider.swift in Sources */,
                                6FB1BDAF21D4F53300A991BF /* FileManager+Extension.swift in Sources */,
                        );
                        runOnlyForDeploymentPostprocessing = 0;
                                6FE254FF219C60290028284D /* ZipExporter.swift in Sources */,
                                6F8F0D7122258153000E8335 /* ActivateOnDemandViewModel.swift in Sources */,
                                6F8F0D7722267C57000E8335 /* SSIDOptionEditTableViewController.swift in Sources */,
-                               6B586C53220CBA6D00427C51 /* Data+KeyEncoding.swift in Sources */,
-                               6F693A562179E556008551C1 /* Endpoint.swift in Sources */,
                                6FDEF7E62185EFB200D8FBF6 /* QRScanViewController.swift in Sources */,
                                6FDB6D18224CC05A00EE4BC3 /* LogViewController.swift in Sources */,
                                6FFA5D952194454A0001E2F7 /* NETunnelProviderProtocol+Extension.swift in Sources */,
-                               5FF7B96221CC95DE00A7DD74 /* InterfaceConfiguration.swift in Sources */,
                                5F4541A921C451D100994C13 /* TunnelStatus.swift in Sources */,
                                6F8F0D7422267AD2000E8335 /* ChevronCell.swift in Sources */,
                                6F61F1E921B932F700483816 /* WireGuardAppError.swift in Sources */,
                                6F7F7E5F21C7D74B00527607 /* TunnelErrors.swift in Sources */,
                                6FDEF7FC21863B6100D8FBF6 /* zip.c in Sources */,
                                6B5C5E27220A48D30024272E /* Keychain.swift in Sources */,
-                               6F628C3F217F3413003482A3 /* DNSServer.swift in Sources */,
                                6F628C3D217F09E9003482A3 /* TunnelViewModel.swift in Sources */,
                                5F4541A621C4449E00994C13 /* ButtonCell.swift in Sources */,
                                5F45419821C2D60500994C13 /* KeyValueCell.swift in Sources */,
                                6F5A2B4821AFF49A0081EDD8 /* FileManager+Extension.swift in Sources */,
                                5F45418C21C2D48200994C13 /* TunnelEditKeyValueCell.swift in Sources */,
                                6FE254FB219C10800028284D /* ZipImporter.swift in Sources */,
-                               6F7774EA217229DB006A79B3 /* IPAddressRange.swift in Sources */,
-                               6F7774E82172020C006A79B3 /* TunnelConfiguration.swift in Sources */,
                                6FDEF7FB21863B6100D8FBF6 /* unzip.c in Sources */,
                                6F29A9432278518D00DC6A6B /* RecentTunnelsTracker.swift in Sources */,
                                6F6899A8218044FC0012E523 /* Curve25519.swift in Sources */,
                                6FBA103B21D6B4290051C35F /* ErrorPresenterProtocol.swift in Sources */,
                                6FDEF802218646BA00D8FBF6 /* ZipArchive.swift in Sources */,
                                5F45419021C2D53800994C13 /* SwitchCell.swift in Sources */,
-                               6BD5C97B220D1AE200784E08 /* key.c in Sources */,
                                6FB1017921C57DE600766195 /* MockTunnels.swift in Sources */,
                                6B707D8421F918D4000A8F73 /* TunnelConfiguration+UapiConfig.swift in Sources */,
                                6FDEF806218725D200D8FBF6 /* SettingsTableViewController.swift in Sources */,
                                5F4541A221C2D6DF00994C13 /* BorderedTextButton.swift in Sources */,
-                               5FF7B96521CC95FA00A7DD74 /* PeerConfiguration.swift in Sources */,
                                6F7774E1217181B1006A79B3 /* MainViewController.swift in Sources */,
                                6FFA5DA42197085D0001E2F7 /* ActivateOnDemandOption.swift in Sources */,
                                5F4541B221CBFAEE00994C13 /* String+ArrayConversion.swift in Sources */,
 /* End PBXSourcesBuildPhase section */
 
 /* Begin PBXTargetDependency section */
+               5892BFC625593F0C000E678D /* PBXTargetDependency */ = {
+                       isa = PBXTargetDependency;
+                       target = 6FDAA03421CE69D000FA6925 /* WireGuardGoBridgemacOS */;
+                       targetProxy = 5892BFC525593F0C000E678D /* PBXContainerItemProxy */;
+               };
                6F5D0C21218352EF000F85AD /* PBXTargetDependency */ = {
                        isa = PBXTargetDependency;
                        target = 6F5D0C19218352EF000F85AD /* WireGuardNetworkExtensioniOS */;
                                GCC_WARN_UNUSED_LABEL = YES;
                                GCC_WARN_UNUSED_VARIABLE = YES;
                                IPHONEOS_DEPLOYMENT_TARGET = 12.0;
+                               MACOSX_DEPLOYMENT_TARGET = 10.14;
                                MTL_ENABLE_DEBUG_INFO = YES;
                                MTL_FAST_MATH = YES;
                                ONLY_ACTIVE_ARCH = YES;
                                GCC_WARN_UNUSED_LABEL = YES;
                                GCC_WARN_UNUSED_VARIABLE = YES;
                                IPHONEOS_DEPLOYMENT_TARGET = 12.0;
+                               MACOSX_DEPLOYMENT_TARGET = 10.14;
                                MTL_ENABLE_DEBUG_INFO = NO;
                                MTL_FAST_MATH = YES;
                                SDKROOT = iphoneos;
                        defaultConfigurationName = Release;
                };
 /* End XCConfigurationList section */
+
+/* Begin XCRemoteSwiftPackageReference section */
+               5892BF8D255581F6000E678D /* XCRemoteSwiftPackageReference "wireguard-apple" */ = {
+                       isa = XCRemoteSwiftPackageReference;
+                       repositoryURL = "https://git.zx2c4.com/wireguard-apple";
+                       requirement = {
+                               branch = "am/wg-adapter-rebased";
+                               kind = branch;
+                       };
+               };
+/* End XCRemoteSwiftPackageReference section */
+
+/* Begin XCSwiftPackageProductDependency section */
+               5892BF8E255581F6000E678D /* WireGuardKit */ = {
+                       isa = XCSwiftPackageProductDependency;
+                       package = 5892BF8D255581F6000E678D /* XCRemoteSwiftPackageReference "wireguard-apple" */;
+                       productName = WireGuardKit;
+               };
+               5892BFDA25593F79000E678D /* WireGuardKit */ = {
+                       isa = XCSwiftPackageProductDependency;
+                       package = 5892BF8D255581F6000E678D /* XCRemoteSwiftPackageReference "wireguard-apple" */;
+                       productName = WireGuardKit;
+               };
+               5892BFDC25593F80000E678D /* WireGuardKit */ = {
+                       isa = XCSwiftPackageProductDependency;
+                       package = 5892BF8D255581F6000E678D /* XCRemoteSwiftPackageReference "wireguard-apple" */;
+                       productName = WireGuardKit;
+               };
+               5892BFF225594742000E678D /* WireGuardKit */ = {
+                       isa = XCSwiftPackageProductDependency;
+                       package = 5892BF8D255581F6000E678D /* XCRemoteSwiftPackageReference "wireguard-apple" */;
+                       productName = WireGuardKit;
+               };
+/* End XCSwiftPackageProductDependency section */
        };
        rootObject = 6FF4AC0C211EC46F002C96EB /* Project object */;
 }
index adb47a39497cdf77f5c2065774884ae4ac3a20fe..919434a6254f0e9651f402737811be6634a03e9c 100644 (file)
@@ -2,6 +2,6 @@
 <Workspace
    version = "1.0">
    <FileRef
-      location = "self:WireGuard.xcodeproj">
+      location = "self:">
    </FileRef>
 </Workspace>
diff --git a/WireGuard/WireGuard.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved b/WireGuard/WireGuard.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved
new file mode 100644 (file)
index 0000000..92e14ab
--- /dev/null
@@ -0,0 +1,16 @@
+{
+  "object": {
+    "pins": [
+      {
+        "package": "WireGuardKit",
+        "repositoryURL": "https://git.zx2c4.com/wireguard-apple",
+        "state": {
+          "branch": "am/wg-adapter-rebased",
+          "revision": "ca605363c05cda61fbd21e031f3fb5eee7f259c8",
+          "version": null
+        }
+      }
+    ]
+  },
+  "version": 1
+}
index 602cd2d7eb0d6e1fc76e1c3e59a89a8e88fd1925..07341ef656145b6b10f3f27b7c9bbd8095ad6dc1 100644 (file)
@@ -2,6 +2,7 @@
 // Copyright © 2018-2019 WireGuard LLC. All Rights Reserved.
 
 import Foundation
+import WireGuardKit
 
 struct Curve25519 {
 
index b987799eaa421e7e134d9c9a46a9d5844dda4dc6..f04e9291e721415c3abc5de0f40a5308b8289fd3 100644 (file)
@@ -2,6 +2,7 @@
 // Copyright © 2018-2019 WireGuard LLC. All Rights Reserved.
 
 import NetworkExtension
+import WireGuardKit
 
 // Creates mock tunnels for the iOS Simulator.
 
index 38f1e6f40dc37fd009d59faffe60fdf0c37e88fe..18e478e6f742c23f1eb3878a79b3e748e9fc6de9 100644 (file)
@@ -2,6 +2,7 @@
 // Copyright © 2018-2019 WireGuard LLC. All Rights Reserved.
 
 import Foundation
+import WireGuardKit
 
 extension TunnelConfiguration {
     convenience init(fromUapiConfig uapiConfig: String, basedOn base: TunnelConfiguration? = nil) throws {
index ba14a3b9762bd1691f5d443a79a8b4e6b931db87..af6a9bb814588d26e2cfb04bcf78e0cc179db86a 100644 (file)
@@ -4,6 +4,7 @@
 import Foundation
 import NetworkExtension
 import os.log
+import WireGuardKit
 
 protocol TunnelsManagerListDelegate: class {
     func tunnelAdded(at index: Int)
index 46f2c92675439082a488ae8de1ce3e42588925e6..384638224e3a838fa4a490a961c7472b591cfa7d 100644 (file)
@@ -2,6 +2,7 @@
 // Copyright © 2018-2019 WireGuard LLC. All Rights Reserved.
 
 import Foundation
+import WireGuardKit
 
 class TunnelImporter {
     static func importFromFile(urls: [URL], into tunnelsManager: TunnelsManager, sourceVC: AnyObject?, errorPresenterType: ErrorPresenterProtocol.Type, completionHandler: (() -> Void)? = nil) {
index 217de48193c072fd8e2ec86f56b903f775e1c04f..eafe79d84654d9f8b69e8715eae0c2bead6d7704 100644 (file)
@@ -2,6 +2,7 @@
 // Copyright © 2018-2019 WireGuard LLC. All Rights Reserved.
 
 import Foundation
+import WireGuardKit
 
 class TunnelViewModel {
 
index 9d04dfa7a8b25d55e633c1096f802edca54217bc..041421f0c33e0f3c7b22fe5fe611cc966af4647e 100644 (file)
@@ -3,6 +3,7 @@
 
 import AVFoundation
 import UIKit
+import WireGuardKit
 
 protocol QRScanViewControllerDelegate: class {
     func addScannedQRCode(tunnelConfiguration: TunnelConfiguration, qrScanViewController: QRScanViewController, completionHandler: (() -> Void)?)
index 7f812d596b1063e7333f8a03dc889c702152136d..d2c6f0c6f5084f4d23d10fa6a4ea06b60e02fcba 100644 (file)
@@ -3,6 +3,7 @@
 
 import UIKit
 import os.log
+import WireGuardKit
 
 class SettingsTableViewController: UITableViewController {
 
@@ -152,7 +153,7 @@ extension SettingsTableViewController {
                 }
                 cell.value = appVersion
             } else if field == .goBackendVersion {
-                cell.value = WIREGUARD_GO_VERSION
+                cell.value = getWireGuardVersion()
             }
             return cell
         } else if field == .exportZipArchive {
index ea432da43a86b909537c3b7a11b5c257e76d36dc..d49acbc9795825d7657f68b7c6a2fcb5117a9cb2 100644 (file)
@@ -2,6 +2,7 @@
 // Copyright © 2018-2019 WireGuard LLC. All Rights Reserved.
 
 import UIKit
+import WireGuardKit
 
 class TunnelDetailTableViewController: UITableViewController {
 
index e805db5128697111cf6298bbb46deda10f13dbb0..f442420bafecde3b1e8d05486c7865ea2562d347 100644 (file)
@@ -4,6 +4,7 @@
 import UIKit
 import MobileCoreServices
 import UserNotifications
+import WireGuardKit
 
 class TunnelsListTableViewController: UIViewController {
 
index cb240230b78dc298335ddb2db0f7e47340c10e88..39a9469fb4d4baaf2c762426009888cb043de3aa 100644 (file)
@@ -3,6 +3,7 @@
 
 import Cocoa
 import ServiceManagement
+import WireGuardKit
 
 @NSApplicationMain
 class AppDelegate: NSObject, NSApplicationDelegate {
@@ -208,7 +209,7 @@ extension AppDelegate {
         }
         let appVersionString = [
             tr(format: "macAppVersion (%@)", appVersion),
-            tr(format: "macGoBackendVersion (%@)", WIREGUARD_GO_VERSION)
+            tr(format: "macGoBackendVersion (%@)", getWireGuardVersion())
         ].joined(separator: "\n")
         let donateString = NSMutableAttributedString(string: tr("donateLink"))
         donateString.addAttribute(.link, value: "https://www.wireguard.com/donations/", range: NSRange(location: 0, length: donateString.length))
index 6afbadb8bb60c45f98689a15e5e08deaff7d0aac..86225101ec84b808be6d87a1275cb0dff91c9a68 100644 (file)
@@ -2,6 +2,7 @@
 // Copyright © 2018-2019 WireGuard LLC. All Rights Reserved.
 
 import Cocoa
+import WireGuardKit
 
 // We have this in a separate file because we don't want the network extension
 // code to see WireGuardAppError and tr(). Also, this extension is used only on macOS.
index 5ce3dc7ea815e80cd86f71342db91df2b5bb99ca..80b759ea6d0e5dc74a6db42e3c36631163fb45c9 100644 (file)
@@ -2,6 +2,7 @@
 // Copyright © 2018-2019 WireGuard LLC. All Rights Reserved.
 
 import Cocoa
+import WireGuardKit
 
 class TunnelDetailTableViewController: NSViewController {
 
index 17ebbefe385ac8e3f84ad80552faf58b60d73f28..de2423e223fb53874559ee1ceabd09ffe8020866 100644 (file)
@@ -2,6 +2,7 @@
 // Copyright © 2018-2019 WireGuard LLC. All Rights Reserved.
 
 import Cocoa
+import WireGuardKit
 
 protocol TunnelEditViewControllerDelegate: class {
     func tunnelSaved(tunnel: TunnelContainer)
index 81766ab4021a89f00d113ea5ae9f5a6ee521b55f..1cd98ee134a711f4b1e91a717dfb8d30370b11e5 100644 (file)
@@ -1,10 +1,8 @@
 #include "x25519.h"
 #include "unzip.h"
 #include "zip.h"
-#include "wireguard-go-version.h"
 #include "ringlogger.h"
 #include "highlighter.h"
-#include "key.h"
 
 #import "TargetConditionals.h"
 #if TARGET_OS_OSX
index 3a87928b7dfe507315e22af077c3f7ec6ebb8fc9..fe3d98464a4c0b7b6dc212b18b42fce7bba67738 100644 (file)
@@ -2,6 +2,7 @@
 // Copyright © 2018-2019 WireGuard LLC. All Rights Reserved.
 
 import Foundation
+import WireGuardKit
 
 enum ZipExporterError: WireGuardAppError {
     case noTunnelsToExport
index 499181acfd5ceaf2f75fa2982ac78e69158a9ce8..c988e94bbf7ddfdac01e2d10fafbf34dd89e0969 100644 (file)
@@ -2,6 +2,7 @@
 // Copyright © 2018-2019 WireGuard LLC. All Rights Reserved.
 
 import Foundation
+import WireGuardKit
 
 class ZipImporter {
     static func importConfigFiles(from url: URL, completion: @escaping (Result<[TunnelConfiguration?], ZipArchiveError>) -> Void) {
index 8cc07d2a8720f819c8a0f64c1573179c5fe7ab59..15715efde1ccb257ae794f2e11a7e5c804c619e6 100644 (file)
@@ -2,9 +2,7 @@
 // Copyright © 2018-2019 WireGuard LLC. All Rights Reserved.
 
 import Foundation
-import Network
 import NetworkExtension
-import os.log
 
 class PacketTunnelProvider: NEPacketTunnelProvider {
 
index eae8b9d778b689e14aefcb08f0190a0c96320941..8c27632a11e9b70b76ba19686faa8cfc2cbbee33 100644 (file)
@@ -1,4 +1,2 @@
 #include "../../wireguard-go-bridge/wireguard.h"
-#include "wireguard-go-version.h"
 #include "ringlogger.h"
-#include "key.h"