From f0844e998f9fc76d1b762cd4ca4c3a5effe07b8f Mon Sep 17 00:00:00 2001 From: Sergey Abramchuk Date: Wed, 10 Apr 2019 12:14:04 +0300 Subject: [PATCH] Update Usage section --- README.md | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 3cfc621..c228878 100644 --- a/README.md +++ b/README.md @@ -247,7 +247,12 @@ extension PacketTunnelProvider: OpenVPNAdapterDelegate { // `OpenVPNAdapterPacketFlow` method signatures are similar to `NEPacketTunnelFlow` so // you can just extend that class to adopt `OpenVPNAdapterPacketFlow` protocol and // send `self.packetFlow` to `completionHandler` callback. - func openVPNAdapter(_ openVPNAdapter: OpenVPNAdapter, configureTunnelWithNetworkSettings networkSettings: NEPacketTunnelNetworkSettings, completionHandler: @escaping (OpenVPNAdapterPacketFlow?) -> Void) { + func openVPNAdapter(_ openVPNAdapter: OpenVPNAdapter, configureTunnelWithNetworkSettings networkSettings: NEPacketTunnelNetworkSettings?, completionHandler: @escaping (OpenVPNAdapterPacketFlow?) -> Void) { + // In order to direct all DNS queries first to the VPN DNS servers before the primary DNS servers + // send empty string to NEDNSSettings.matchDomains + networkSettings?.dnsSettings?.matchDomains = [""] + + // Specify the network settings for the current tunneling session. setTunnelNetworkSettings(settings) { (error) in completionHandler(error == nil ? self.packetFlow : nil) }