aboutsummaryrefslogtreecommitdiffstats
path: root/WireGuard
diff options
context:
space:
mode:
authorJeroen Leenarts <jeroen.leenarts@gmail.com>2018-08-08 06:59:56 +0200
committerJeroen Leenarts <jeroen.leenarts@gmail.com>2018-08-08 06:59:56 +0200
commit2b7aa04d403f0d8277f0ff5422c3f07249c424b9 (patch)
tree12f140c3973e28ca190fe82009f315f58aeb3a3a /WireGuard
parentGenerate split allowed IPs in protocol configuration. (diff)
downloadwireguard-apple-2b7aa04d403f0d8277f0ff5422c3f07249c424b9.tar.xz
wireguard-apple-2b7aa04d403f0d8277f0ff5422c3f07249c424b9.zip
Add tunnel provider identifier.
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
Diffstat (limited to 'WireGuard')
-rw-r--r--WireGuard/Models/Tunnel+CoreDataProperties.swift1
-rw-r--r--WireGuard/Models/Tunnel+Extension.swift1
-rw-r--r--WireGuard/Models/WireGuard.xcdatamodeld/WireGuard.xcdatamodel/contents3
-rw-r--r--WireGuard/ViewControllers/TunnelConfigurationTableViewController.swift1
4 files changed, 5 insertions, 1 deletions
diff --git a/WireGuard/Models/Tunnel+CoreDataProperties.swift b/WireGuard/Models/Tunnel+CoreDataProperties.swift
index 1bea5a0..acbb1f9 100644
--- a/WireGuard/Models/Tunnel+CoreDataProperties.swift
+++ b/WireGuard/Models/Tunnel+CoreDataProperties.swift
@@ -16,6 +16,7 @@ extension Tunnel {
return NSFetchRequest<Tunnel>(entityName: "Tunnel")
}
+ @NSManaged public var tunnelIdentifier: String?
@NSManaged public var title: String?
@NSManaged public var interface: Interface?
@NSManaged public var peers: NSOrderedSet?
diff --git a/WireGuard/Models/Tunnel+Extension.swift b/WireGuard/Models/Tunnel+Extension.swift
index bd025cc..359a831 100644
--- a/WireGuard/Models/Tunnel+Extension.swift
+++ b/WireGuard/Models/Tunnel+Extension.swift
@@ -13,6 +13,7 @@ extension Tunnel {
var providerConfiguration = [String: Any]()
providerConfiguration["title"] = self.title
+ providerConfiguration["tunnelIdentifier"] = self.tunnelIdentifier
var settingsString = "replace_peers=true\n"
if let interface = interface {
settingsString += generateInterfaceProviderConfiguration(interface)
diff --git a/WireGuard/Models/WireGuard.xcdatamodeld/WireGuard.xcdatamodel/contents b/WireGuard/Models/WireGuard.xcdatamodeld/WireGuard.xcdatamodel/contents
index 48e9027..d888fa1 100644
--- a/WireGuard/Models/WireGuard.xcdatamodeld/WireGuard.xcdatamodel/contents
+++ b/WireGuard/Models/WireGuard.xcdatamodeld/WireGuard.xcdatamodel/contents
@@ -17,12 +17,13 @@
</entity>
<entity name="Tunnel" representedClassName="Tunnel" syncable="YES">
<attribute name="title" optional="YES" attributeType="String" syncable="YES"/>
+ <attribute name="tunnelIdentifier" attributeType="String" syncable="YES"/>
<relationship name="interface" maxCount="1" deletionRule="Cascade" destinationEntity="Interface" inverseName="tunnel" inverseEntity="Interface" syncable="YES"/>
<relationship name="peers" toMany="YES" deletionRule="Cascade" ordered="YES" destinationEntity="Peer" inverseName="tunnel" inverseEntity="Peer" syncable="YES"/>
</entity>
<elements>
<element name="Interface" positionX="-54" positionY="-9" width="128" height="120"/>
<element name="Peer" positionX="-36" positionY="9" width="128" height="135"/>
- <element name="Tunnel" positionX="160" positionY="192" width="128" height="90"/>
+ <element name="Tunnel" positionX="160" positionY="192" width="128" height="105"/>
</elements>
</model> \ No newline at end of file
diff --git a/WireGuard/ViewControllers/TunnelConfigurationTableViewController.swift b/WireGuard/ViewControllers/TunnelConfigurationTableViewController.swift
index 5513e75..f761495 100644
--- a/WireGuard/ViewControllers/TunnelConfigurationTableViewController.swift
+++ b/WireGuard/ViewControllers/TunnelConfigurationTableViewController.swift
@@ -35,6 +35,7 @@ class TunnelConfigurationTableViewController: UITableViewController {
viewContext.performAndWait {
tunnel = Tunnel(context: viewContext)
+ tunnel.tunnelIdentifier = UUID().uuidString
let peer = Peer(context: viewContext)
peer.allowedIPs = "0.0.0.0/0, ::/0"
tunnel.addToPeers(peer)