aboutsummaryrefslogtreecommitdiffstats
path: root/tun/tun_openbsd.go
diff options
context:
space:
mode:
Diffstat (limited to 'tun/tun_openbsd.go')
-rw-r--r--tun/tun_openbsd.go6
1 files changed, 4 insertions, 2 deletions
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