cba1d6585a
Number of fixes in response to code review
...
This version cannot complete a handshake.
The program will panic upon receiving any message on the UDP socket.
2017-08-07 15:25:04 +02:00
8c34c4cbb3
First set of code review patches
2017-08-04 16:15:53 +02:00
22c83f4b8d
Merge branch 'master' of git.zx2c4.com:wireguard-go
2017-08-02 15:32:12 +02:00
a70c44a9f6
Create /var/run/wireguard if non-existent
2017-08-02 15:30:57 +02:00
0ade48cb82
Makefile: cleanup a bit and add cloc
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com >
2017-08-01 17:09:34 +02:00
91c1822473
Remove stale unix socket
2017-08-01 12:45:11 +02:00
b03a6ab1b1
Close UAPI socket before exit
2017-08-01 12:15:20 +02:00
d7a49b8b8c
Verify source address
2017-07-31 22:26:55 +02:00
1fb00e8045
Fixed shadowing bug
2017-07-27 23:51:07 +02:00
92135131a7
Merge branch 'master' of git.zx2c4.com:wireguard-go
2017-07-27 23:46:01 +02:00
fb3fa4f915
Improved timer code
2017-07-27 23:45:37 +02:00
c3d9ae402d
Close UDP connection when listen port changes
2017-07-23 16:21:08 +02:00
2ed9dac3a5
Merge branch 'darwin'
2017-07-23 15:48:23 +02:00
2a6dd2ed92
Fixed UAPI deadlock
2017-07-21 15:17:43 +02:00
47f8a3d89a
Moved remaining platform dependent UAPI code
2017-07-20 15:06:24 +02:00
086d32186a
Reviewed and added OSX patch
...
The patch was provided by:
Naveen Nathan <naveen@lastninja.net >
The following modifications to the patch was made:
- Added copyright notice
- Fixed file descriptor leak in .MTU() method
- Migrated to the new(er) golang.org/x/sys/unix package
- Removed non-functioning Daemonize method
2017-07-19 13:12:25 +02:00
18714fc4a4
Added last_handshake_time fields to UAPI
2017-07-18 15:22:56 +02:00
bd6027a4d5
Fixed file descriptor leak on linux
2017-07-18 14:15:29 +02:00
c5d7efc246
Fixed deadlock in index.go
2017-07-17 16:16:18 +02:00
dd4da93749
Added padding
...
Added plaintext padding and fixed default interface MTU
2017-07-15 16:27:59 +02:00
b21c82e32d
Conforming to the cross-platform UX
...
The implementation now terminates when the unix socket is deleted.
Currently we are unable to use fsnotify (on linux),
since it does not notify on the deletion of open files.
The implementation can now daemonize (on linux)
or be kept in the foreground by providing the necessary flag.
2017-07-15 13:41:02 +02:00
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
0043008ad0
Endpoint discovery from handshake initiation
2017-07-13 21:29:22 +02:00
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
8393cbff52
Restructured MAC/cookie calculation
...
Added copy-right headers accidentally removed
2017-07-12 23:11:49 +02:00
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
c273078376
Added ratelimiting of handshake messages
2017-07-11 18:48:29 +02:00
9c4acb9f35
Fixed incomming initiation bug
2017-07-10 17:20:43 +02:00
44c9896883
Added replay protection
2017-07-10 12:09:19 +02:00
4ad62aaa6a
Improved timer state machine
2017-07-08 23:51:26 +02:00
5c1ccbddf0
Added source verification
2017-07-08 09:23:10 +02:00
ed31e75739
Fixed cookie reply processing bug
2017-07-07 13:47:09 +02:00
70179f8c8c
Fixed broken test
2017-07-06 16:24:24 +02:00
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
2aa0daf4d5
Fixed transport header problem
2017-07-02 15:28:38 +02:00
1e620427bd
Handshake negotiation functioning
2017-07-01 23:29:22 +02:00
a4cc0a30fa
Removed exponential backoff
2017-06-30 23:05:03 +02:00
ba3e486667
Completed initial version of outbound flow
2017-06-30 14:41:08 +02:00
7e185db141
Completed get/set configuration
...
For debugging of "outbound flow"
Mostly, a few things still missing
2017-06-29 14:39:21 +02:00
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
8236f3afa2
Implemented MAC1/2 calculation
2017-06-27 17:33:06 +02:00
eb75ff430d
Begin implementation of outbound work queue
2017-06-26 22:07:29 +02:00
9d806d3853
Begin work on outbound packet flow
2017-06-26 13:14:02 +02:00
cf3a5130d3
Completed noise handshake
2017-06-24 22:03:52 +02:00
25190e4336
Restructuring of noise impl.
2017-06-24 15:34:44 +02:00
521e77fd54
Fixed missing type
2017-06-23 13:45:32 +02:00
50aeefcb51
Beginning work noise handshake
2017-06-23 13:41:59 +02:00
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
dbc3ee3e9d
Trie random test
...
Test trie against naive implementation of prefix routing.
2017-06-02 18:02:04 +02:00
a377bcaed7
Added random test for trie
2017-06-02 17:58:46 +02:00