Define OpenVPNAdapterPacketFlow and use it instead of NEPacketTunnelFlow object to simplify testing

This commit is contained in:
Sergey Abramchuk
2017-03-09 19:16:08 +03:00
parent 3c840cd0f8
commit 1e886eaca7
4 changed files with 24 additions and 7 deletions
@@ -0,0 +1,13 @@
//
// NEPacketTunnelFlow+OpenVPN.swift
// OpenVPN iOS Client
//
// Created by Sergey Abramchuk on 09.03.17.
//
//
import Foundation
import NetworkExtension
import OpenVPNAdapter
extension NEPacketTunnelFlow: OpenVPNAdapterPacketFlow { }
@@ -74,7 +74,7 @@ class PacketTunnelProvider: NEPacketTunnelProvider {
extension PacketTunnelProvider: OpenVPNAdapterDelegate {
func configureTunnel(settings: NEPacketTunnelNetworkSettings, callback: @escaping (NEPacketTunnelFlow?) -> Void) {
func configureTunnel(settings: NEPacketTunnelNetworkSettings, callback: @escaping (OpenVPNAdapterPacketFlow?) -> Void) {
setTunnelNetworkSettings(settings) { (error) in
callback(error == nil ? self.packetFlow : nil)
}
@@ -85,7 +85,7 @@ extension PacketTunnelProvider: OpenVPNAdapterDelegate {
}
func handle(error: Error) {
}
}