diff options
author | David Crawshaw <crawshaw@tailscale.com> | 2020-06-23 10:03:15 +1000 |
---|---|---|
committer | Jason A. Donenfeld <Jason@zx2c4.com> | 2020-07-14 23:17:51 -0600 |
commit | 6823cc10ffe193c0cb1d61a5d1828d563d3d0e5f (patch) | |
tree | 2bf5e8774ed424b9e569621853567c68fb00f555 /tunnel | |
parent | winipcfg: add missing error case to dns domain setting (diff) | |
download | wireguard-windows-6823cc10ffe193c0cb1d61a5d1828d563d3d0e5f.tar.xz wireguard-windows-6823cc10ffe193c0cb1d61a5d1828d563d3d0e5f.zip |
tunnel: use conn.BindSocketToInterface type
Signed-off-by: David Crawshaw <crawshaw@tailscale.com>
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
Diffstat (limited to 'tunnel')
-rw-r--r-- | tunnel/defaultroutemonitor.go | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/tunnel/defaultroutemonitor.go b/tunnel/defaultroutemonitor.go index e71aad0d..3af9042c 100644 --- a/tunnel/defaultroutemonitor.go +++ b/tunnel/defaultroutemonitor.go @@ -11,9 +11,9 @@ import ( "time" "golang.org/x/sys/windows" + "golang.zx2c4.com/wireguard/conn" "golang.zx2c4.com/wireguard/device" "golang.zx2c4.com/wireguard/tun" - "golang.zx2c4.com/wireguard/windows/tunnel/winipcfg" ) @@ -51,12 +51,16 @@ func bindSocketRoute(family winipcfg.AddressFamily, device *device.Device, ourLU *lastLUID = luid *lastIndex = index blackhole := blackholeWhenLoop && index == 0 + bind, _ := device.Bind().(conn.BindSocketToInterface) + if bind == nil { + return nil + } if family == windows.AF_INET { log.Printf("Binding v4 socket to interface %d (blackhole=%v)", index, blackhole) - return device.BindSocketToInterface4(index, blackhole) + return bind.BindSocketToInterface4(index, blackhole) } else if family == windows.AF_INET6 { log.Printf("Binding v6 socket to interface %d (blackhole=%v)", index, blackhole) - return device.BindSocketToInterface6(index, blackhole) + return bind.BindSocketToInterface6(index, blackhole) } return nil } |