From ab0f442dafba417c3a13d883a447e882d7983690 Mon Sep 17 00:00:00 2001 From: "Jason A. Donenfeld" Date: Wed, 27 Feb 2019 01:06:43 +0100 Subject: tun: use sysconn instead of .Fd with Go 1.12 --- tun/tun_openbsd.go | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'tun/tun_openbsd.go') diff --git a/tun/tun_openbsd.go b/tun/tun_openbsd.go index ab4c87b..b10c460 100644 --- a/tun/tun_openbsd.go +++ b/tun/tun_openbsd.go @@ -8,9 +8,9 @@ package tun import ( "errors" "fmt" - "golang.zx2c4.com/wireguard/rwcancel" "golang.org/x/net/ipv6" "golang.org/x/sys/unix" + "golang.zx2c4.com/wireguard/rwcancel" "io/ioutil" "net" "os" @@ -167,7 +167,9 @@ func CreateTUNFromFile(file *os.File, mtu int) (TUNDevice, error) { return nil, err } - tun.rwcancel, err = rwcancel.NewRWCancel(int(file.Fd())) + tun.operateOnFd(func(fd uintptr) { + tun.rwcancel, err = rwcancel.NewRWCancel(int(fd)) + }) if err != nil { tun.tunFile.Close() return nil, err -- cgit v1.2.3-59-g8ed1b