summaryrefslogtreecommitdiffhomepage
AgeCommit message (Collapse)Author
2018-05-03Start to dust off DarwinJason A. Donenfeld
2018-05-01Add missing locks and fix debug output, and try to flush queuesJason A. Donenfeld
Flushing queues on exit is sort of a partial solution, but this could be better. Really what we want is for no more packets to be enqueued after isUp is set to false.
2018-04-27Clear src cache if route changes to new ifindexJason A. Donenfeld
2018-04-27Fix error handling and cleanup of netlink listenerJason A. Donenfeld
2018-04-20Fix wrong debug messagesJason A. Donenfeld
2018-04-20Rework sticky socketsJason A. Donenfeld
2018-04-20Check for correct first nibbleJason A. Donenfeld
The code before assumed that the flow label was always zero.
2018-04-20Signal using select and a pipe for bringing down TUN readerJason A. Donenfeld
Waiting on resolution of these to fix in better way: - https://github.com/golang/go/issues/22939 - https://github.com/golang/go/issues/24331
2018-04-19We can determine the interface name ourselvesJason A. Donenfeld
2018-04-19Do not hard code MTU defaultJason A. Donenfeld
2018-04-18Fixed read from closed channelMathias Hall-Andersen
A premature waitgroup .Done resulted in reading from closed channel. This caused a nil-pointer deref & crash. Added additional debugging when closing routines.
2018-04-18Allow determining nameJason A. Donenfeld
2018-04-18Use socketcall on x86Jason A. Donenfeld
2018-04-18Use simple 16-bit integer for persistent keepaliveJason A. Donenfeld
Races for this aren't a huge problem.
2018-04-18Align 64-bit atomicsJason A. Donenfeld
64-bit varibles that are accessed using the Go atomic functions must be 8-byte aligned on 32-bit platforms. Otherwise there are crashes.
2018-03-08Begin work on full device<->device unit-testMathias Hall-Andersen
To simulate a full interaction between two WireGuard instances without networking, using dummy instances of the interfaces
2018-02-28Support nopi modeJason A. Donenfeld
2018-02-18Close tun fd when bringing down tunnelJason A. Donenfeld
2018-02-18Fix timer typoJason A. Donenfeld
2018-02-18Seperated fwmark update code into functionMathias Hall-Andersen
2018-02-13MPLv2 for App StoreJason A. Donenfeld
2018-02-13Reimplemented bind_rtmgrp in pure GoDominik Süß
Getting rid of the Cgo dependency for listing on netlink. Ported original patch from "syscall" to "golang.org/x/sys/unix". Signed-off-by: Dominik Süß <dominik.suess@outlook.at> Co-Authored-By: Mathias Hall-Andersen <mathias@hall-andersen.dk>
2018-02-12Use relative importsJason A. Donenfeld
2018-02-12Revert "Don't use modules"Mathias Hall-Andersen
This reverts commit bffe99aeadae09abd02f2bd3184925af6b680535.
2018-02-12Don't use modulesJason A. Donenfeld
Feel free to revert this if you have a strong feeling about it. But so far as I can see, it adds a lot of complexity for basically no upsides.
2018-02-11Moved test-processes to backgroundMathias Hall-Andersen
2018-02-11TUN status hack was causing spam during shutdownMathias Hall-Andersen
2018-02-11Added missing mutex acquisitionMathias Hall-Andersen
2018-02-11Removed exported methods from ratelimiter packageMathias Hall-Andersen
2018-02-11Moved ratelimiter to internal packageMathias Hall-Andersen
2018-02-11Moved tai64n into sub-packageMathias Hall-Andersen
2018-02-11Fixed tabsMathias Hall-Andersen
2018-02-11Reverted event changesMathias Hall-Andersen
This feature was not needed for Android, upon further inspection.
2018-02-09Started migration to sub-packagesMathias Hall-Andersen
2018-02-07Go treats underscores speciallyJason A. Donenfeld
In case there's ever a platform called helpers or protocol, we don't want to be doing this.
2018-02-04Work on logging formatMathias Hall-Andersen
2018-02-04Merge branch 'master' into timer-teardownMathias Hall-Andersen
2018-02-04Removed debugging locksMathias Hall-Andersen
2018-02-04Align with go library layoutMathias Hall-Andersen
2018-02-02Fixed testsMathias Hall-Andersen
2018-02-02Clear cryptographic state when interface downMathias Hall-Andersen
Attempts to clear the cryptographic state for every peer when the device goes down.
2018-02-02Rework of entire locking systemMathias Hall-Andersen
Locking on the Device instance is now much more fined-grained, seperating out the fields into "resources" st. most common interactions only require a small number.
2018-02-01Merge branch 'timer-teardown' of git.zx2c4.com:wireguard-go into timer-teardownMathias Hall-Andersen
2018-01-31Added binary to .gitignoreMathias Hall-Andersen
2018-01-26Added initial version of peer teardownMathias Hall-Andersen
There is a double lock issue with device.Close which has yet to be resolved.
2018-01-16Fixed potential DoS issueMathias Hall-Andersen
2018-01-13Work on timer teardown + bug fixesMathias Hall-Andersen
Added waitgroups to peer struct for routine start / stop synchronisation
2018-01-09Fixed fwmark update without device status changeMathias Hall-Andersen
An update of the fwmark was missing, when the device was not bought up after the change.
2018-01-04Revert "Peer timer teardown"Mathias Hall-Andersen
This reverts commit d73f960aab86b9a12b0b7d18aa80ce1d4f130695. Problems with deadlocking arises due to orphaned packets in per-peer queues. Additional work on this issue continues in seperate branch.
2017-12-29Peer timer teardownMathias Hall-Andersen