Commit graph

834 commits

Author SHA1 Message Date
Mathias Hall-Andersen 8993b3927c Improved throughput
- Improved performance by adding the message buffers to a sync.Pool.
- Fixed issue with computing "next" key-pair upon
  receiving a response message.
2017-07-14 14:25:18 +02:00
Mathias Hall-Andersen 0043008ad0 Endpoint discovery from handshake initiation 2017-07-13 21:29:22 +02:00
Mathias Hall-Andersen 93e3848ea7 Terminate on interface deletion
Program now terminates when the interface is removed
Increases the number of os threads (relevant for Go <1.5, not tested)
More consistent commenting
Improved logging (additional peer information)
2017-07-13 14:32:40 +02:00
Mathias Hall-Andersen 8393cbff52 Restructured MAC/cookie calculation
Added copy-right headers accidentally removed
2017-07-12 23:11:49 +02:00
Mathias Hall-Andersen 86707cbc88 Fixed MTU method for linux TUN interface
Updated the TUN interface
Added the "MTU" method for the linux implementation of the TUN interface
2017-07-11 22:48:58 +02:00
Mathias Hall-Andersen c273078376 Added ratelimiting of handshake messages 2017-07-11 18:48:29 +02:00
Mathias Hall-Andersen 9c4acb9f35 Fixed incomming initiation bug 2017-07-10 17:20:43 +02:00
Mathias Hall-Andersen 44c9896883 Added replay protection 2017-07-10 12:09:19 +02:00
Mathias Hall-Andersen 4ad62aaa6a Improved timer state machine 2017-07-08 23:51:26 +02:00
Mathias Hall-Andersen 5c1ccbddf0 Added source verification 2017-07-08 09:23:10 +02:00
Mathias Hall-Andersen ed31e75739 Fixed cookie reply processing bug 2017-07-07 13:47:09 +02:00
Mathias Hall-Andersen 70179f8c8c Fixed broken test 2017-07-06 16:24:24 +02:00
Mathias Hall-Andersen 59f9316f51 Initial working full exchange
The implementation is now capable of connecting to another
wireguard instance, complete a handshake and exchange transport
messages.
2017-07-06 15:43:55 +02:00
Mathias Hall-Andersen 2aa0daf4d5 Fixed transport header problem 2017-07-02 15:28:38 +02:00
Mathias Hall-Andersen 1e620427bd Handshake negotiation functioning 2017-07-01 23:29:22 +02:00
Mathias Hall-Andersen a4cc0a30fa Removed exponential backoff 2017-06-30 23:05:03 +02:00
Mathias Hall-Andersen ba3e486667 Completed initial version of outbound flow 2017-06-30 14:41:08 +02:00
Mathias Hall-Andersen 7e185db141 Completed get/set configuration
For debugging of "outbound flow"
Mostly, a few things still missing
2017-06-29 14:39:21 +02:00
Mathias Hall-Andersen 1f0976a26c Work on UAPI
Cross-platform API (get operation)
Handshake initiation creation process
Outbound packet flow
Fixes from code-review
2017-06-28 23:45:45 +02:00
Mathias Hall-Andersen 8236f3afa2 Implemented MAC1/2 calculation 2017-06-27 17:33:06 +02:00
Mathias Hall-Andersen eb75ff430d Begin implementation of outbound work queue 2017-06-26 22:07:29 +02:00
Mathias Hall-Andersen 9d806d3853 Begin work on outbound packet flow 2017-06-26 13:14:02 +02:00
Mathias Hall-Andersen cf3a5130d3 Completed noise handshake 2017-06-24 22:03:52 +02:00
Mathias Hall-Andersen 25190e4336 Restructuring of noise impl. 2017-06-24 15:34:44 +02:00
Mathias Hall-Andersen 521e77fd54 Fixed missing type 2017-06-23 13:45:32 +02:00
Mathias Hall-Andersen 50aeefcb51 Beginning work noise handshake 2017-06-23 13:41:59 +02:00
Mathias Hall-Andersen 1868d15914 Beginning work on TUN interface
And outbound routing

I am not entirely convinced the use of net.IP is a good idea,
since the internal representation of net.IP is a byte slice
and all constructor functions in "net" return 16 byte slices
(padded for IPv4), while the use in this project uses 4 byte slices.
Which may be confusing.
2017-06-04 21:48:15 +02:00
Mathias Hall-Andersen dbc3ee3e9d Trie random test
Test trie against naive implementation of prefix routing.
2017-06-02 18:02:04 +02:00
Mathias Hall-Andersen a377bcaed7 Added random test for trie 2017-06-02 17:58:46 +02:00
Mathias Hall-Andersen ec3d656beb Inital implementation of trie 2017-06-01 21:31:30 +02:00
Mathias Hall-Andersen 8ce921987f Merge branch 'master' of git.zx2c4.com:wireguard-go 2017-05-30 22:37:46 +02:00
Mathias Hall-Andersen 1eebdf88a3 Beginning work on UAPI and routing table 2017-05-30 22:36:49 +02:00
Peter Wu ea36282213 README: rust -> go 2017-05-30 12:06:44 +02:00
Jason A. Donenfeld 6bd0b2fbe2 Initial scaffolding 2017-05-30 00:13:20 +02:00