From 44c4df1cd5a4f6dff32b2998711cc630dd5408e7 Mon Sep 17 00:00:00 2001 From: "Jason A. Donenfeld" Date: Fri, 18 Dec 2020 12:42:28 +0100 Subject: UI: Model: remove 0.0.0.0/8 from non-private IPs macOS freaks out if you try to explicitly route to 0.0.0.0/8 in its includedRoutes parameter. Even though 0.0.0.0/8 isn't RFC1918, it is marked in RFC6890 as "this host on this network", so removing it from the Internet routes makes sense semantically too. This commit changes 0.0.0.0/5 into: - 1.0.0.0/8 - 2.0.0.0/8 - 3.0.0.0/8 - 4.0.0.0/6 Signed-off-by: Jason A. Donenfeld --- Sources/WireGuardApp/UI/TunnelViewModel.swift | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) (limited to 'Sources') diff --git a/Sources/WireGuardApp/UI/TunnelViewModel.swift b/Sources/WireGuardApp/UI/TunnelViewModel.swift index 6d0471e..cf7de4e 100644 --- a/Sources/WireGuardApp/UI/TunnelViewModel.swift +++ b/Sources/WireGuardApp/UI/TunnelViewModel.swift @@ -398,12 +398,13 @@ class TunnelViewModel { static let ipv4DefaultRouteString = "0.0.0.0/0" static let ipv4DefaultRouteModRFC1918String = [ // Set of all non-private IPv4 IPs - "0.0.0.0/5", "8.0.0.0/7", "11.0.0.0/8", "12.0.0.0/6", "16.0.0.0/4", "32.0.0.0/3", - "64.0.0.0/2", "128.0.0.0/3", "160.0.0.0/5", "168.0.0.0/6", "172.0.0.0/12", - "172.32.0.0/11", "172.64.0.0/10", "172.128.0.0/9", "173.0.0.0/8", "174.0.0.0/7", - "176.0.0.0/4", "192.0.0.0/9", "192.128.0.0/11", "192.160.0.0/13", "192.169.0.0/16", - "192.170.0.0/15", "192.172.0.0/14", "192.176.0.0/12", "192.192.0.0/10", - "193.0.0.0/8", "194.0.0.0/7", "196.0.0.0/6", "200.0.0.0/5", "208.0.0.0/4" + "1.0.0.0/8", "2.0.0.0/8", "3.0.0.0/8", "4.0.0.0/6", "8.0.0.0/7", "11.0.0.0/8", + "12.0.0.0/6", "16.0.0.0/4", "32.0.0.0/3", "64.0.0.0/2", "128.0.0.0/3", + "160.0.0.0/5", "168.0.0.0/6", "172.0.0.0/12", "172.32.0.0/11", "172.64.0.0/10", + "172.128.0.0/9", "173.0.0.0/8", "174.0.0.0/7", "176.0.0.0/4", "192.0.0.0/9", + "192.128.0.0/11", "192.160.0.0/13", "192.169.0.0/16", "192.170.0.0/15", + "192.172.0.0/14", "192.176.0.0/12", "192.192.0.0/10", "193.0.0.0/8", + "194.0.0.0/7", "196.0.0.0/6", "200.0.0.0/5", "208.0.0.0/4" ] static func excludePrivateIPsFieldStates(isSinglePeer: Bool, allowedIPs: Set) -> (shouldAllowExcludePrivateIPsControl: Bool, excludePrivateIPsValue: Bool) { -- cgit v1.2.3-59-g8ed1b