Jason A. Donenfeld
89d2c5ed7a
Extend structs rather than embed, when possible
2019-02-05 12:59:42 +01:00
Jason A. Donenfeld
dff424baf8
Update copyright
2019-02-05 12:59:42 +01:00
Jason A. Donenfeld
a8326ae753
Make error messages consistent
2018-12-19 00:35:53 +01:00
Jason A. Donenfeld
8be1fc9c00
send: do not unlock already freed object
2018-10-18 18:15:24 +02:00
Jason A. Donenfeld
ebc7541953
Fix shutdown races
2018-09-24 01:52:02 +02:00
Jason A. Donenfeld
833597b585
More pooling
2018-09-24 00:37:43 +02:00
Jason A. Donenfeld
cf81a28dd3
Fixup buffer freeing
2018-09-22 05:43:03 +02:00
Jason A. Donenfeld
942abf948a
send: more precise padding calculation
2018-09-16 23:42:31 +02:00
Jason A. Donenfeld
39d6e4f2f1
Change queueing drop order and fix memory leaks
...
If the queues are full, we drop the present packet, which is better for
network traffic flow. Also, we try to fix up the memory leaks with not
putting buffers from our shared pool.
2018-09-16 21:50:58 +02:00
Jason A. Donenfeld
1c02557013
send: use accessor function for buffer pool
2018-09-16 18:49:19 +02:00
Jason A. Donenfeld
5be541d147
global: fix up copyright headers
2018-09-16 18:49:19 +02:00
Jason A. Donenfeld
2e13b7b0fb
send: better debug message for failed data packet
2018-07-16 16:05:36 +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
Jason A. Donenfeld
84c5357cf3
Reasonable punctuation given the spacing
2018-05-21 02:50:39 +02:00
Jason A. Donenfeld
acb5481246
Fix data races in timers
2018-05-20 06:50:07 +02:00
Jason A. Donenfeld
e04f9543c0
Fix race in packetInNonceQueueIsAwaitingKey
2018-05-20 03:24:14 +02:00
Jason A. Donenfeld
870734ab5e
timers: clear send_keepalive timer on sending handshake response
...
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-19 02:40:22 +02:00
Mathias Hall-Andersen
2a432523ed
Listen for flush in outer select
...
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-19 02:40:22 +02:00
Mathias Hall-Andersen
38accea986
Add copyright headers
2018-05-19 02:40:22 +02:00
Jason A. Donenfeld
846d721dfd
Finer-grained start-stop synchronization
2018-05-16 22:20:15 +02:00
Jason A. Donenfeld
cf161f270e
Do not send keepalive if closed
2018-05-15 13:29:52 +02:00
Jason A. Donenfeld
b56af1829d
More refactoring
2018-05-13 23:20:13 +02:00
Jason A. Donenfeld
729773fdf3
More odds and ends
2018-05-13 19:52:13 +02:00
Jason A. Donenfeld
2c27ab205c
Rework index hashtable
2018-05-13 18:26:09 +02:00
Jason A. Donenfeld
233f079a94
Rewrite timers and related state machines
2018-05-10 16:08:03 +02:00
Mathias Hall-Andersen
375dcbd4ae
Merge branch 'master' of ssh://git.zx2c4.com/wireguard-go
2018-05-05 22:10:22 +02:00
Mathias Hall-Andersen
abe2651ad5
Removed remaining signals from peer
...
1. Removed remaining signals from peer struct
2. Made needAnotherKeepalive local
3. Removed environment check from warning text (annoying when debugging)
2018-05-05 22:07:58 +02:00
Jason A. Donenfeld
c29428b075
Reorder stopping messages so that logs are coherent
2018-05-05 06:09:30 +02:00
Jason A. Donenfeld
a46401bbb1
More robust solution to close deadlock
2018-05-05 06:00:38 +02:00
Jason A. Donenfeld
09a9bc2899
Fix infinite loop in exit routine
2018-05-05 05:33:29 +02:00
Mathias Hall-Andersen
7a83f2565a
Removed old signals
2018-05-05 04:15:07 +02:00
Mathias Hall-Andersen
edbce6b400
Merge branch 'master' of ssh://git.zx2c4.com/wireguard-go
2018-05-05 02:23:03 +02:00
Mathias Hall-Andersen
6db41d5a26
Initial version of migration to new event model
...
- Begin move away from global timer state.
- Made logging format more consistent
2018-05-05 02:20:52 +02:00
Jason A. Donenfeld
a040786645
global: Add SPDX tags and copyright header
...
Mathias should probably add his copyright headers to each file too.
2018-05-03 15:06:25 +02:00
Jason A. Donenfeld
168ef61a63
Add missing locks and fix debug output, and try to flush queues
...
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-05-01 17:46:28 +02:00
Mathias Hall-Andersen
ac9912345b
Fixed read from closed channel
...
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-18 20:29:48 +02:00
Mathias Hall-Andersen
ceccd39420
Work on logging format
2018-02-04 19:18:44 +01:00
Mathias Hall-Andersen
a0f54cbe5a
Align with go library layout
2018-02-04 16:08:26 +01:00