summaryrefslogtreecommitdiffhomepage
AgeCommit message (Collapse)Author
2018-05-22Call shutdown on route socket on freebsdJason A. Donenfeld
2018-05-21Minor main.go signal fixesFilippo Valsorda
* 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-21Fix Sscanf use in tun_darwinFilippo Valsorda
License: MIT Signed-off-by: Filippo Valsorda <valsorda@google.com>
2018-05-21Make successful tests silentFilippo Valsorda
License: MIT Signed-off-by: Filippo Valsorda <valsorda@google.com>
2018-05-21Properly close DummyTUN to avoid deadlock in TestNoiseHandshakeFilippo Valsorda
License: MIT Signed-off-by: Filippo Valsorda <valsorda@google.com>
2018-05-21User cookie is closer to fwmark than setfibJason A. Donenfeld
2018-05-21Remove broken windows cruftJason A. Donenfeld
2018-05-21Rework freebsd supportJason A. Donenfeld
2018-05-21Add FreeBSD supportBrady OBrien
Signed-off-by: Brady OBrien <brady.obrien128@gmail.com>
2018-05-21Close events channel when no status listenerJason A. Donenfeld
2018-05-21Straighten out UAPI loggingJason A. Donenfeld
2018-05-21Close hack listener before closing channelJason A. Donenfeld
2018-05-21ratelimiter: do not run GC with nothing to doJason A. Donenfeld
2018-05-21Reasonable punctuation given the spacingJason A. Donenfeld
2018-05-20Fix data races in timersJason A. Donenfeld
2018-05-20Fix race with closing event channelJason A. Donenfeld
There's still a tiny race on Linux, since the tun channel is written to from two places.
2018-05-20StyleJason A. Donenfeld
2018-05-20Remove unused mtu variableJason A. Donenfeld
2018-05-20Give bind its own wait groupJason A. Donenfeld
In a waitgroup, all waits must come after all adds
2018-05-20Avoid deadlock when the mutex isn't required, since these are atomicsJason A. Donenfeld
Maybe this fixes the "double lock issue" in f73d2fb2d96bc3fbc8bc4cce452e3c19689de01e?
2018-05-20Use proper status listener on DarwinJason A. Donenfeld
2018-05-20Reduce the hack listener to once a secondJason A. Donenfeld
2018-05-20Fix race in netlink peer correlatorJason A. Donenfeld
2018-05-20Fix race in lock pendingJason A. Donenfeld
2018-05-20Fix race in statsJason A. Donenfeld
2018-05-20Fix race in packetInNonceQueueIsAwaitingKeyJason A. Donenfeld
2018-05-20Discourage building for LinuxJason A. Donenfeld
2018-05-19Revert "Temporary work around. Please revert me"Jason A. Donenfeld
This reverts commit 4312a7c70a58656891ff1398f2d0d36f4ed74c8a.
2018-05-19timers: no need to clear keepalive in persistent keepaliveJason A. Donenfeld
We do this after sending the keepalive anyway. This is something of a regression, though, since before we'd cancel and then send, but now we send and then cancel, so it introduces a potential race, but hopefully that isn't too big of a deal. Kernel module commit a24b3e6e15ae1ea1291666e5da910caf43eedbaf
2018-05-19timers: clear send_keepalive timer on sending handshake responseJason A. Donenfeld
We reorganize this into also doing so on sending keepalives itself, which means the state machine is much more consistent, even if this was already implied. Kernel module commit 30290ef1d2581a3e6ee8ffcdb05d580cfba976be
2018-05-19Listen for flush in outer selectMathias Hall-Andersen
Now listen for flushNonceQueue signal in outer select during the RoutineNonce routine. This is needed to handle the edge case where the queue is flushed, but no packets are in the nonce queue. Since the signal has capacity 1 this signal will remain and potentially flush the queue at a later time, with packets meant for transmission.
2018-05-19Add copyright headersMathias Hall-Andersen
2018-05-18Avoid using v6-mapped-v4Jason A. Donenfeld
2018-05-18StyleJason A. Donenfeld
2018-05-17Fill out readmeJason A. Donenfeld
2018-05-16Finer-grained start-stop synchronizationJason A. Donenfeld
2018-05-15Fix dir permissionsJason A. Donenfeld
2018-05-15Temporary work around. Please revert meJason A. Donenfeld
2018-05-15Lock timers on modificationJason A. Donenfeld
2018-05-15Avoid vendoring tooling as much as possibleJason A. Donenfeld
2018-05-15Add vendoring for HomebrewJason A. Donenfeld
2018-05-15Do not send keepalive if closedJason A. Donenfeld
2018-05-15Fix refactoring mistakesJason A. Donenfeld
2018-05-15Improve makefileJason A. Donenfeld
2018-05-14Use /dev/null as place holderJason A. Donenfeld
2018-05-14Print utun name on darwinJason A. Donenfeld
2018-05-14Mask IPs when showing from trieJason A. Donenfeld
Otherwise intermediate nodes that get collapsed to real nodes will display the wrong value.
2018-05-14Ugly hack to suppress warning on backgrounded processJason A. Donenfeld
2018-05-14Better common bits functionJason A. Donenfeld
2018-05-14Fix noise testJason A. Donenfeld