diff options
author | Jason A. Donenfeld <Jason@zx2c4.com> | 2019-02-27 06:24:56 +0100 |
---|---|---|
committer | Jason A. Donenfeld <Jason@zx2c4.com> | 2019-02-27 06:24:56 +0100 |
commit | b1dabf5a00a8400238ef261d31e048aa794be106 (patch) | |
tree | c0deabec4f7654f84a78c3b76c967850998afd65 /wireguard-go-bridge/src/tun | |
parent | Importing: macOS: Support importing of multiple files at a time (diff) | |
download | wireguard-apple-b1dabf5a00a8400238ef261d31e048aa794be106.tar.xz wireguard-apple-b1dabf5a00a8400238ef261d31e048aa794be106.zip |
wireguard-go-bridge: update to Go 1.12
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
Diffstat (limited to 'wireguard-go-bridge/src/tun')
-rw-r--r-- | wireguard-go-bridge/src/tun/api-ios.go | 14 |
1 files changed, 4 insertions, 10 deletions
diff --git a/wireguard-go-bridge/src/tun/api-ios.go b/wireguard-go-bridge/src/tun/api-ios.go index 0d542cf..8d3413e 100644 --- a/wireguard-go-bridge/src/tun/api-ios.go +++ b/wireguard-go-bridge/src/tun/api-ios.go @@ -6,28 +6,24 @@ package tun import ( - "git.zx2c4.com/wireguard-go/rwcancel" "golang.org/x/sys/unix" "net" "os" ) func CreateTUNFromFD(tunFd int) (TUNDevice, string, error) { + err := unix.SetNonblock(tunFd, true) + if err != nil { + return nil, "", err + } file := os.NewFile(uintptr(tunFd), "/dev/tun") tun := &nativeTun{ tunFile: file, - fd: file.Fd(), events: make(chan TUNEvent, 5), errors: make(chan error, 5), } - var err error - tun.rwcancel, err = rwcancel.NewRWCancel(tunFd) - if err != nil { - return nil, "", err - } name, err := tun.Name() if err != nil { - tun.rwcancel.Cancel() return nil, "", err } tunIfindex, err := func() (int, error) { @@ -38,12 +34,10 @@ func CreateTUNFromFD(tunFd int) (TUNDevice, string, error) { return iface.Index, nil }() if err != nil { - tun.tunFile.Close() return nil, "", err } tun.routeSocket, err = unix.Socket(unix.AF_ROUTE, unix.SOCK_RAW, unix.AF_UNSPEC) if err != nil { - tun.tunFile.Close() return nil, "", err } go tun.routineRouteListener(tunIfindex) |