From 05cc0c829821d43cb45dc777e8dbde296304cbeb Mon Sep 17 00:00:00 2001 From: "Jason A. Donenfeld" Date: Tue, 11 Dec 2018 18:33:13 +0100 Subject: Freebsd is finally normal in sys/unix --- rwcancel/fdset.go | 22 ++++++++++++++++++++++ rwcancel/fdset_default.go | 24 ------------------------ rwcancel/fdset_freebsd.go | 22 ---------------------- 3 files changed, 22 insertions(+), 46 deletions(-) create mode 100644 rwcancel/fdset.go delete mode 100644 rwcancel/fdset_default.go delete mode 100644 rwcancel/fdset_freebsd.go (limited to 'rwcancel') diff --git a/rwcancel/fdset.go b/rwcancel/fdset.go new file mode 100644 index 0000000..b393b18 --- /dev/null +++ b/rwcancel/fdset.go @@ -0,0 +1,22 @@ +/* SPDX-License-Identifier: GPL-2.0 + * + * Copyright (C) 2017-2018 WireGuard LLC. All Rights Reserved. + */ + +package rwcancel + +import "golang.org/x/sys/unix" + +type fdSet struct { + fdset unix.FdSet +} + +func (fdset *fdSet) set(i int) { + bits := 32 << (^uint(0) >> 63) + fdset.fdset.Bits[i/bits] |= 1 << uint(i%bits) +} + +func (fdset *fdSet) check(i int) bool { + bits := 32 << (^uint(0) >> 63) + return (fdset.fdset.Bits[i/bits] & (1 << uint(i%bits))) != 0 +} diff --git a/rwcancel/fdset_default.go b/rwcancel/fdset_default.go deleted file mode 100644 index f8a4b25..0000000 --- a/rwcancel/fdset_default.go +++ /dev/null @@ -1,24 +0,0 @@ -// +build !freebsd - -/* SPDX-License-Identifier: GPL-2.0 - * - * Copyright (C) 2017-2018 WireGuard LLC. All Rights Reserved. - */ - -package rwcancel - -import "golang.org/x/sys/unix" - -type fdSet struct { - fdset unix.FdSet -} - -func (fdset *fdSet) set(i int) { - bits := 32 << (^uint(0) >> 63) - fdset.fdset.Bits[i/bits] |= 1 << uint(i%bits) -} - -func (fdset *fdSet) check(i int) bool { - bits := 32 << (^uint(0) >> 63) - return (fdset.fdset.Bits[i/bits] & (1 << uint(i%bits))) != 0 -} diff --git a/rwcancel/fdset_freebsd.go b/rwcancel/fdset_freebsd.go deleted file mode 100644 index 0c115c1..0000000 --- a/rwcancel/fdset_freebsd.go +++ /dev/null @@ -1,22 +0,0 @@ -/* SPDX-License-Identifier: GPL-2.0 - * - * Copyright (C) 2017-2018 WireGuard LLC. All Rights Reserved. - */ - -package rwcancel - -import "golang.org/x/sys/unix" - -type fdSet struct { - fdset unix.FdSet -} - -func (fdset *fdSet) set(i int) { - bits := 32 << (^uint(0) >> 63) - fdset.fdset.X__fds_bits[i/bits] |= 1 << uint(i%bits) -} - -func (fdset *fdSet) check(i int) bool { - bits := 32 << (^uint(0) >> 63) - return (fdset.fdset.X__fds_bits[i/bits] & (1 << uint(i%bits))) != 0 -} -- cgit v1.2.3