aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/conf/parser.go
diff options
context:
space:
mode:
authorJason A. Donenfeld <Jason@zx2c4.com>2019-02-28 17:41:30 +0100
committerJason A. Donenfeld <Jason@zx2c4.com>2019-03-01 01:38:30 +0100
commit616f56bd5d9640212a1f8beccb7b7208068d2b7c (patch)
treedd411c7c77d655164621b5ed623d945346b2ebf7 /conf/parser.go
parenttunnel: log the builtin go log to elog (diff)
downloadwireguard-windows-616f56bd5d9640212a1f8beccb7b7208068d2b7c.tar.xz
wireguard-windows-616f56bd5d9640212a1f8beccb7b7208068d2b7c.zip
tunnel: make winipcfg sort of work
The duplicate route thing is silly, and we currently don't do DNS or the fancy socket routing. But this is a step in the right direction, perhaps. Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
Diffstat (limited to 'conf/parser.go')
-rw-r--r--conf/parser.go8
1 files changed, 6 insertions, 2 deletions
diff --git a/conf/parser.go b/conf/parser.go
index 6a397a9d..48cf88b6 100644
--- a/conf/parser.go
+++ b/conf/parser.go
@@ -40,17 +40,21 @@ func parseIPCidr(s string) (ipcidr *IPCidr, err error) {
if addr == nil {
return
}
+ maybeV4 := addr.To4()
+ if maybeV4 != nil {
+ addr = maybeV4
+ }
if len(cidrStr) > 0 {
err = &ParseError{"Invalid network prefix length", s}
cidr, err = strconv.Atoi(cidrStr)
if err != nil || cidr < 0 || cidr > 128 {
return
}
- if cidr > 32 && addr.To4() != nil {
+ if cidr > 32 && maybeV4 != nil {
return
}
} else {
- if addr.To4() != nil {
+ if maybeV4 != nil {
cidr = 32
} else {
cidr = 128