Jason A. Donenfeld
2e13b7b0fb
send: better debug message for failed data packet
2018-07-16 16:05:36 +02:00
Jason A. Donenfeld
6b3b1c3b91
version: bump snapshot
2018-06-13 16:22:16 +02:00
Jason A. Donenfeld
6a5d0e2bcd
Support IPv6-less kernels
2018-06-12 01:32:46 +02:00
Jason A. Donenfeld
0ba551807f
Do not build tun device on ios
2018-06-09 03:31:17 +02:00
Jason A. Donenfeld
99d5aeeb27
Fix duplicated wording
2018-06-02 17:36:35 +02:00
Jason A. Donenfeld
a050431f26
Makefile: export PWD for OpenBSD's ksh(1)
...
Interestingly, ksh(1) on OpenBSD does not export PWD by default, and it
also has a notion of the "logical cwd" vs the "physical cwd", with the
latter being passed to chdir, but the former being stored in the
non-exported PWD and displayed to the user. This means that if you `cd`
into a directory that's comprised of symlinks, exec'd processes will see
the physical path. Observe:
# ksh
# mkdir a
# ln -s a b
# cd b
# pwd
/root/b
# ksh -c pwd
/root/a
The fact of separating physical and logical paths is not too uncommon
for shells (bash does it too), but not exporting PWD is very odd.
Since this is common behavior for many shells, libraries that return the
working directory will do something strange: they `stat(".")` and then
`stat(getenv("PWD"))`, and if these point to the same inode, they roll
with the value of `getenv("PWD")`, or otherwise fallback to asking the
kernel for the cwd.
Since PWD was not exported by ksh(1), Go's dep utility did not understand
it was operating inside of our faked GOPATH and became upset.
This patch works around the whole situation by simply exporting PWD
before executing dep.
2018-06-02 16:36:12 +02:00
Jason A. Donenfeld
0c976003c8
version: bump snapshot
2018-05-31 02:26:07 +02:00
Jason A. Donenfeld
955e89839f
Print version number in log
2018-05-30 01:09:18 +02:00
Jason A. Donenfeld
a4cd0216c0
Update deps
2018-05-28 01:39:37 +02:00
Jason A. Donenfeld
1d7845a600
Fix typo in timers
2018-05-27 22:55:15 +02:00
Jason A. Donenfeld
5079298ce2
Disable broadcast mode on *BSD
...
Keeping it on makes IPv6 problematic and confuses routing daemons.
2018-05-27 22:55:15 +02:00
Jason A. Donenfeld
fc3a7635e5
Disappointing anti-sticky experiment
2018-05-27 22:55:15 +02:00
Jason A. Donenfeld
2496cdd8e6
Fix tests
2018-05-24 19:58:16 +02:00
Jason A. Donenfeld
4365b4583f
Trick for being extra sensitive to route changes
2018-05-24 18:21:14 +02:00
Jason A. Donenfeld
bbf320c477
Back to sticky sockets on android
2018-05-24 17:53:00 +02:00
Jason A. Donenfeld
625d59da14
Do not build on Linux
2018-05-24 16:41:42 +02:00
Jason A. Donenfeld
2f2eca8947
Catch EINTR
2018-05-24 15:36:29 +02:00
Jason A. Donenfeld
66f6ca3e4a
Remove old makefile artifact
2018-05-24 03:13:46 +02:00
Jason A. Donenfeld
e6657638fc
version: bump snapshot
2018-05-24 02:25:51 +02:00
Jason A. Donenfeld
4a9de3218e
Add undocumented --version flag
2018-05-24 02:25:36 +02:00
Jason A. Donenfeld
28a167e828
Eye before ee except after see
2018-05-23 19:00:00 +02:00
Jason A. Donenfeld
99c6513d60
No zero sequence numbers
2018-05-23 18:30:55 +02:00
Jason A. Donenfeld
8a92a9109a
Don't cause a new fake gopath to call dep
2018-05-23 17:31:06 +02:00
Jason A. Donenfeld
0b647d1ca7
Infoleak ifnames and be more permissive
...
Listing interfaces is already permitted by the OS, so we allow this info
leak too.
2018-05-23 15:38:24 +02:00
Jason A. Donenfeld
588b9f01ae
Adopt GOPATH
...
GOPATH is annoying, but the Go community pushing me to adopt it is even
more annoying.
2018-05-23 05:18:13 +02:00
Jason A. Donenfeld
f70bd1fab3
Remove more windows cruft
2018-05-23 04:46:09 +02:00
Jason A. Donenfeld
40d5ff0c70
Cleanup
2018-05-23 03:58:27 +02:00
Jason A. Donenfeld
5a2228a5c9
Move replay into subpackage
2018-05-23 03:58:27 +02:00
Jason A. Donenfeld
0a63188afa
Move tun to subpackage
2018-05-23 03:58:27 +02:00
Jason A. Donenfeld
65a74f3175
Avoid sticky sockets on Android
...
The android policy routing system does insane things.
2018-05-22 23:22:23 +02:00
Jason A. Donenfeld
b4cef2524f
Fix integer conversions
2018-05-22 18:35:52 +02:00
Jason A. Donenfeld
7038de95e1
Bump dependencies for OpenBSD
2018-05-22 17:58:34 +02:00
Jason A. Donenfeld
82d12e85bb
Fix markdown
2018-05-22 16:47:15 +02:00
Jason A. Donenfeld
d6b694e161
Add OpenBSD tun driver support
2018-05-22 16:21:05 +02:00
Jason A. Donenfeld
794e494802
Fix code duplication
2018-05-22 14:59:29 +02:00
Jason A. Donenfeld
dd663a7ba4
Notes on FreeBSD limitations
2018-05-22 01:30:16 +02:00
Jason A. Donenfeld
8462c08cf2
Just in case darwin changes, we also shutdown
2018-05-22 01:27:29 +02:00
Jason A. Donenfeld
b8c9e13c6e
Call shutdown on route socket on freebsd
2018-05-22 01:26:47 +02:00
Filippo Valsorda
bc05eb1c3c
Minor main.go signal fixes
...
* Buffer the signal channel as it's non-blocking on the sender side
* Notify on SIGTERM instead of the uncatchable SIGKILL
License: MIT
Signed-off-by: Filippo Valsorda <valsorda@google.com>
2018-05-21 20:22:12 +02:00
Filippo Valsorda
7a527f7c89
Fix Sscanf use in tun_darwin
...
License: MIT
Signed-off-by: Filippo Valsorda <valsorda@google.com>
2018-05-21 20:21:31 +02:00
Filippo Valsorda
84f52ce0d6
Make successful tests silent
...
License: MIT
Signed-off-by: Filippo Valsorda <valsorda@google.com>
2018-05-21 20:21:00 +02:00
Filippo Valsorda
7bdc5eb54e
Properly close DummyTUN to avoid deadlock in TestNoiseHandshake
...
License: MIT
Signed-off-by: Filippo Valsorda <valsorda@google.com>
2018-05-21 20:20:13 +02:00
Jason A. Donenfeld
1c666576d5
User cookie is closer to fwmark than setfib
2018-05-21 20:13:39 +02:00
Jason A. Donenfeld
2ae22ac65d
Remove broken windows cruft
2018-05-21 19:00:58 +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
837a12c841
Close events channel when no status listener
2018-05-21 14:16:46 +02:00
Jason A. Donenfeld
7472930d4e
Straighten out UAPI logging
2018-05-21 03:38:50 +02:00
Jason A. Donenfeld
6307bfcdf4
Close hack listener before closing channel
2018-05-21 03:31:46 +02:00
Jason A. Donenfeld
e28d70f5b2
ratelimiter: do not run GC with nothing to do
2018-05-21 03:20:18 +02:00