diff options
author | Roopesh Chander <roop@roopc.net> | 2018-10-29 16:49:49 +0530 |
---|---|---|
committer | Roopesh Chander <roop@roopc.net> | 2018-10-29 16:49:49 +0530 |
commit | 3791b2e1b98eb4afd21c3deaf58a1f2abf325613 (patch) | |
tree | b44a88de9362c24e20b48065c943a49e6e2e6d36 /WireGuard | |
parent | Tunnel edit: Support for exclude private IPs (diff) | |
download | wireguard-apple-3791b2e1b98eb4afd21c3deaf58a1f2abf325613.tar.xz wireguard-apple-3791b2e1b98eb4afd21c3deaf58a1f2abf325613.zip |
Model: Cap networkPrefixLengths to valid values
Signed-off-by: Roopesh Chander <roop@roopc.net>
Diffstat (limited to 'WireGuard')
-rw-r--r-- | WireGuard/WireGuard/Model/IPAddressRange.swift | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/WireGuard/WireGuard/Model/IPAddressRange.swift b/WireGuard/WireGuard/Model/IPAddressRange.swift index 3de30e5..c7e6be5 100644 --- a/WireGuard/WireGuard/Model/IPAddressRange.swift +++ b/WireGuard/WireGuard/Model/IPAddressRange.swift @@ -28,7 +28,13 @@ extension IPAddressRange { } let networkPrefixLengthSubstring = string[indexOfNetworkPrefixLength ..< string.endIndex] if let npl = UInt8(networkPrefixLengthSubstring) { - networkPrefixLength = npl + if (address is IPv4Address) { + networkPrefixLength = min(npl, 32) + } else if (address is IPv6Address) { + networkPrefixLength = min(npl, 128) + } else { + fatalError() + } } else { return nil } |