Jason A. Donenfeld
50d779833e
rwcancel: use ordinary os.ErrClosed instead of custom error
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2021-05-20 17:56:36 +02:00
Jason A. Donenfeld
a9b377e9e1
rwcancel: use poll instead of select
...
Suggested-by: Lennart Poettering <lennart@poettering.net>
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2021-05-20 17:42:34 +02:00
Jason A. Donenfeld
6f08a10041
rwcancel: add an explicit close call
...
This lets us collect FDs even if the GC doesn't do it for us.
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2021-02-09 20:19:14 +01:00
Jason A. Donenfeld
a97ef39cd4
rwcancel: use errors.Is for unwrapping
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2021-02-09 19:54:00 +01:00
Jason A. Donenfeld
d4112d9096
global: bump copyright
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2021-01-28 17:52:15 +01:00
Jason A. Donenfeld
db0aa39b76
global: update header comments and modules
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-05-02 02:08:26 -06:00
David Crawshaw
224bc9e60c
rwcancel: no-op builds for windows and darwin
...
This lets us include the package on those platforms in a
followup commit where we split out a conn package from device.
It also lets us run `go test ./...` when developing on macOS.
Signed-off-by: David Crawshaw <crawshaw@tailscale.com>
2020-03-30 18:41:39 +11:00
Avery Pennarun
0abb6b668c
rwcancel: handle EINTR and EAGAIN in unixSelect()
...
On my Chromebook (Linux 4.19.44 in a VM) and on an AWS EC2
machine, select() was sometimes returning EINTR. This is
harmless and just means you should try again. So let's try
again.
This eliminates a problem where the tunnel fails to come up
correctly and the program needs to be restarted.
Signed-off-by: Avery Pennarun <apenwarr@gmail.com>
2019-10-17 15:19:17 +02:00
Jason A. Donenfeld
3bf41b06ae
global: regroup all imports
2019-05-14 09:09:52 +02:00
Jason A. Donenfeld
89d2c5ed7a
Extend structs rather than embed, when possible
2019-02-05 12:59:42 +01:00
Jason A. Donenfeld
dff424baf8
Update copyright
2019-02-05 12:59:42 +01:00
Jason A. Donenfeld
05cc0c8298
Freebsd is finally normal in sys/unix
2018-12-11 18:33:13 +01:00
Jason A. Donenfeld
5be541d147
global: fix up copyright headers
2018-09-16 18:49:19 +02:00
Jason A. Donenfeld
2f2eca8947
Catch EINTR
2018-05-24 15:36:29 +02:00
Jason A. Donenfeld
ff3f2455e5
Rework freebsd support
2018-05-21 18:48:48 +02:00
Brady OBrien
b962d7d791
Add FreeBSD support
...
Signed-off-by: Brady OBrien <brady.obrien128@gmail.com>
2018-05-21 17:31:22 +02:00
Jason A. Donenfeld
8b30278ce6
No more finalizer for rwcancel
2018-05-14 06:10:08 +02:00
Jason A. Donenfeld
5f5503afa8
Add rwcancelation to darwin
2018-05-14 04:02:59 +02:00
Jason A. Donenfeld
7e10ebe101
Introduce rwcancel
2018-05-14 00:30:52 +02:00