Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | global: add SPDX tags to all files | Greg Kroah-Hartman | 2017-12-09 | 1 | -1/+4 |
| | | | | | | | | | | | | | It's good to have SPDX identifiers in all files as the Linux kernel developers are working to add these identifiers to all files. Update all files with the correct SPDX license identifier based on the license text of the project or based on the license in the file itself. The SPDX identifier is a legally binding shorthand, which can be used instead of the full boiler plate text. Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Modified-by: Jason A. Donenfeld <Jason@zx2c4.com> | ||||
* | device: clear last handshake timer on ifdown | Jason A. Donenfeld | 2017-11-29 | 1 | -0/+1 |
| | | | | | | | Otherwise new handshakes might not occur immediately when the interface goes up and down. Also initialize peers to having a proper zeroed handshake jiffies. | ||||
* | allowedips: rename from routingtable | Jason A. Donenfeld | 2017-11-10 | 1 | -1/+1 |
| | | | | Makes it more clear that this _not_ a routing table replacement. | ||||
* | global: revert checkpatch.pl changes | Jason A. Donenfeld | 2017-11-02 | 1 | -1/+1 |
| | | | | | These changes were suggested by checkpatch.pl, but actually cause big problems depending on the options. Revert. | ||||
* | global: style nits | Jason A. Donenfeld | 2017-10-31 | 1 | -1/+2 |
| | |||||
* | global: infuriating kernel iterator style | Jason A. Donenfeld | 2017-10-31 | 1 | -1/+1 |
| | | | | | | | | | | | | | | | | | One types: for (i = 0 ... So one should also type: for_each_obj (obj ... But the upstream kernel style guidelines are insane, and so we must instead do: for_each_obj(obj ... Ugly, but one must choose his battles wisely. | ||||
* | peer: store total number of peers instead of iterating | Jason A. Donenfeld | 2017-10-31 | 1 | -12/+3 |
| | | | | | | This is faster, since it means adding a new peer is O(1) instead of O(n). It's also safe to do because we're holding the device_update_lock on both the ++ and the --. | ||||
* | global: accept decent check_patch.pl suggestions | Jason A. Donenfeld | 2017-10-31 | 1 | -3/+4 |
| | |||||
* | routingtable: only use device's mutex, not a special rt one | Jason A. Donenfeld | 2017-10-09 | 1 | -1/+1 |
| | |||||
* | queueing: use ptr_ring instead of linked lists | Jason A. Donenfeld | 2017-10-05 | 1 | -2/+4 |
| | |||||
* | global: add space around variable declarations | Jason A. Donenfeld | 2017-10-03 | 1 | -0/+4 |
| | |||||
* | noise: use spinlock for rotating keys | Jason A. Donenfeld | 2017-10-02 | 1 | -1/+1 |
| | | | | | This should only really be contended in extremely exceptional cases, so changing from a mutex to a spinlock is likely fine. | ||||
* | peer: remove from RCU lists when the kref is zero | Jason A. Donenfeld | 2017-10-02 | 1 | -4/+5 |
| | |||||
* | peer: ensure that lookup tables are added last | Jason A. Donenfeld | 2017-10-02 | 1 | -3/+3 |
| | |||||
* | netlink: switch from ioctl to netlink for configuration | Jason A. Donenfeld | 2017-10-02 | 1 | -1/+1 |
| | |||||
* | timers: convert to use netif_running | Jason A. Donenfeld | 2017-09-24 | 1 | -2/+3 |
| | |||||
* | queue: entirely rework parallel system | Jason A. Donenfeld | 2017-09-18 | 1 | -10/+11 |
| | | | | | | | | | | This removes our dependency on padata and moves to a different mode of multiprocessing that is more efficient. This began as Samuel Holland's GSoC project and was gradually reworked/redesigned/rebased into this present commit, which is a combination of his initial contribution and my subsequent rewriting and redesigning. | ||||
* | global: use pointer to net_device | Jason A. Donenfeld | 2017-07-20 | 1 | -2/+2 |
| | | | | | | DaveM prefers it to be this way per [1]. [1] http://www.spinics.net/lists/netdev/msg443992.html | ||||
* | peer: explicitly initialize atomic | Jason A. Donenfeld | 2017-06-05 | 1 | -0/+3 |
| | |||||
* | debug: print interface name in dmesg | Jason A. Donenfeld | 2017-05-31 | 1 | -2/+2 |
| | |||||
* | style: spaces after for loops | Jason A. Donenfeld | 2017-05-30 | 1 | -2/+2 |
| | |||||
* | peer: use iterator macro instead of callback | Jason A. Donenfeld | 2017-05-30 | 1 | -27/+0 |
| | |||||
* | noise: precompute static-static ECDH operation | Jason A. Donenfeld | 2017-05-30 | 1 | -1/+4 |
| | |||||
* | handshake: process in parallel | Jason A. Donenfeld | 2017-05-30 | 1 | -2/+2 |
| | |||||
* | noise: redesign preshared key mode | Jason A. Donenfeld | 2017-05-17 | 1 | -3/+3 |
| | |||||
* | data: cleanup parallel workqueue and use two max_active | Jason A. Donenfeld | 2017-04-08 | 1 | -2/+2 |
| | |||||
* | locking: always use _bh | Jason A. Donenfeld | 2017-04-04 | 1 | -4/+4 |
| | | | | | All locks are potentially between user context and softirq, which means we need to take the _bh variant. | ||||
* | Update copyright | Jason A. Donenfeld | 2017-01-10 | 1 | -1/+1 |
| | |||||
* | cookies: use xchacha20poly1305 instead of chacha20poly1305 | Jason A. Donenfeld | 2016-12-23 | 1 | -0/+1 |
| | | | | | This allows us to precompute the blake2s calls and save cycles, since hchacha is fast. | ||||
* | peer: don't use sockaddr_storage to reduce memory usage | Jason A. Donenfeld | 2016-12-13 | 1 | -1/+1 |
| | |||||
* | headers: cleanup notices | Jason A. Donenfeld | 2016-11-21 | 1 | -1/+1 |
| | |||||
* | socket: keep track of src address in sending packets | Jason A. Donenfeld | 2016-11-15 | 1 | -1/+1 |
| | |||||
* | c89: the static keyword is okay in c99, but not in c89 | Jason A. Donenfeld | 2016-11-05 | 1 | -1/+1 |
| | |||||
* | socket: use dst_cache instead of handrolled cache | Jason A. Donenfeld | 2016-11-04 | 1 | -2/+6 |
| | |||||
* | timers: take reference like a lookup table | Jason A. Donenfeld | 2016-11-03 | 1 | -8/+15 |
| | |||||
* | kref: elide checks | Jason A. Donenfeld | 2016-11-02 | 1 | -5/+3 |
| | |||||
* | peer: kref is most likely to succeed | Jason A. Donenfeld | 2016-11-01 | 1 | -2/+2 |
| | |||||
* | Rework headers and includes | Jason A. Donenfeld | 2016-09-29 | 1 | -5/+2 |
| | |||||
* | c: specify static array size in function params | Jason A. Donenfeld | 2016-08-02 | 1 | -1/+1 |
| | | | | | | | | | | | | | | | The C standard states: A declaration of a parameter as ``array of type'' shall be adjusted to ``qualified pointer to type'', where the type qualifiers (if any) are those specified within the [ and ] of the array type derivation. If the keyword static also appears within the [ and ] of the array type derivation, then for each call to the function, the value of the corresponding actual argument shall provide access to the first element of an array with at least as many elements as specified by the size expression. By changing void func(int array[4]) to void func(int array[static 4]), we automatically get the compiler checking argument sizes for us, which is quite nice. | ||||
* | Initial commit | Jason A. Donenfeld | 2016-06-25 | 1 | -0/+144 |