diff --git a/.travis.yml b/.travis.yml index c3b7c07..c4b1ecd 100644 --- a/.travis.yml +++ b/.travis.yml @@ -5,7 +5,4 @@ os: - osx go: - - 1.8 - -install: - - go get golang.org/x/sys/unix + - stable diff --git a/go.mod b/go.mod new file mode 100644 index 0000000..25564d4 --- /dev/null +++ b/go.mod @@ -0,0 +1,5 @@ +module github.com/mailru/easygo + +go 1.13 + +require golang.org/x/sys v0.0.0-20190913121621-c3b328c6e5a7 diff --git a/go.sum b/go.sum new file mode 100644 index 0000000..9bb0810 --- /dev/null +++ b/go.sum @@ -0,0 +1,2 @@ +golang.org/x/sys v0.0.0-20190913121621-c3b328c6e5a7 h1:wYqz/tQaWUgGKyx+B/rssSE6wkIKdY5Ee6ryOmzarIg= +golang.org/x/sys v0.0.0-20190913121621-c3b328c6e5a7/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= diff --git a/netpoll/kqueue.go b/netpoll/kqueue.go index 4b6e89b..71c44c5 100644 --- a/netpoll/kqueue.go +++ b/netpoll/kqueue.go @@ -191,7 +191,7 @@ type Kevent struct { Filter KeventFilter Flags KeventFlag Fflags uint32 - Data int64 + Data int } // Kevents is a fixed number of pairs of event filter and flags which can be @@ -378,7 +378,7 @@ func (k *Kqueue) wait(onError func(error)) { cb(Kevent{ Filter: KeventFilter(e.Filter), Flags: KeventFlag(e.Flags), - Data: e.Data, + Data: int(e.Data), Fflags: e.Fflags, }) cbs[i] = nil @@ -391,11 +391,3 @@ func (k *Kqueue) wait(onError func(error)) { } } } - -func evGet(fd int, filter KeventFilter, flags KeventFlag) unix.Kevent_t { - return unix.Kevent_t{ - Ident: uint64(fd), - Filter: int16(filter), - Flags: uint16(flags), - } -} diff --git a/netpoll/kqueue_32.go b/netpoll/kqueue_32.go new file mode 100644 index 0000000..34eaa83 --- /dev/null +++ b/netpoll/kqueue_32.go @@ -0,0 +1,14 @@ +// +build darwin dragonfly freebsd netbsd openbsd +// +build arm 386 + +package netpoll + +import "golang.org/x/sys/unix" + +func evGet(fd int, filter KeventFilter, flags KeventFlag) unix.Kevent_t { + return unix.Kevent_t{ + Ident: uint32(fd), + Filter: int16(filter), + Flags: uint16(flags), + } +} diff --git a/netpoll/kqueue_64.go b/netpoll/kqueue_64.go new file mode 100644 index 0000000..0341fa7 --- /dev/null +++ b/netpoll/kqueue_64.go @@ -0,0 +1,14 @@ +// +build darwin dragonfly freebsd netbsd openbsd +// +build arm64 amd64 + +package netpoll + +import "golang.org/x/sys/unix" + +func evGet(fd int, filter KeventFilter, flags KeventFlag) unix.Kevent_t { + return unix.Kevent_t{ + Ident: uint64(fd), + Filter: int16(filter), + Flags: uint16(flags), + } +}