aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/src (unfollow)
Commit message (Collapse)AuthorFilesLines
2019-07-11noise: immediately rekey all peers after changing device private keyJason A. Donenfeld6-7/+47
Reported-by: Derrick Pallas <derrick@pallas.us>
2019-07-08netlink: enforce that unused bits of flags are zeroJason A. Donenfeld2-5/+16
Reported-by: Toke Høiland-Jørgensen <toke@toke.dk>
2019-07-08wg-quick: android: refactor and add incoming allow rulesJason A. Donenfeld1-65/+73
Suggested-by: Yağmur Oymak <yagmur.oymak@gmail.com>
2019-07-04compat: define conversion constants for ancient kernelsJason A. Donenfeld2-1/+5
2019-07-02version: bump snapshot0.0.20190702Jason A. Donenfeld2-2/+2
2019-07-02receive: queue dead packets to napi queue instead of empty rx_queueJason A. Donenfeld2-5/+3
2019-06-28peer: use LIST_HEAD macroJason A. Donenfeld1-1/+1
Suggested-by: Sultan Alsawaf <sultan@kerneltoast.com>
2019-06-28netlink: cast struct over cb->args for type safetyJason A. Donenfeld1-29/+34
This eliminates the headache of managing cb->args[??]. Suggested-by: Johannes Berg <johannes@sipsolutions.net>
2019-06-28compat: support RHEL8's skb_mark_not_on_list backportJason A. Donenfeld1-1/+3
2019-06-25compat: rhel backported list modificationsJason A. Donenfeld1-1/+1
2019-06-25global: switch to coarse ktimeJason A. Donenfeld11-36/+43
Coarse ktime is broken until [1] in 5.2 and kernels without the backport, so we use fallback code there. The fallback code has also been improved significantly. It now only uses slower clocks on kernels < 3.17, at the expense of some accuracy we're not overly concerned about. [1] https://lore.kernel.org/lkml/tip-e3ff9c3678b4d80e22d2557b68726174578eaf52@git.kernel.org/ Suggested-by: Arnd Bergmann <arnd@arndb.de>
2019-06-24compat: unify custom function prefix/suffixJason A. Donenfeld3-48/+48
2019-06-24compat: some kernels weirdly backport prandom_u32_maxJason A. Donenfeld1-2/+3
2019-06-24wg-quick: darwin: support being called from launchdJason A. Donenfeld3-1/+53
This causes wg-quick up to wait for the monitor to exit before it exits, so that launchd can correctly wait on it. Reported-by: Cameron Palmer <cameron@promon.no>
2019-06-18qemu: show signal when failingJason A. Donenfeld1-3/+14
2019-06-03blake2s: spacingJason A. Donenfeld2-123/+123
2019-06-02curve25519: not all linkers support bmi2 and adxJason A. Donenfeld3-6/+58
2019-06-01version: bump snapshot0.0.20190601Jason A. Donenfeld2-2/+2
2019-05-31compat: don't call xgetbv on cpus with no XSAVEJason A. Donenfeld1-1/+1
2019-05-31blake2s: add ssse3 to nobsJason A. Donenfeld1-1/+2
2019-05-31blake2s: do not use xgetbv for ssse3 detectionJason A. Donenfeld1-3/+1
2019-05-31tools: pass WG_ENDPOINT_RESOLUTION_RETRIES=infinity to systemd unitJason A. Donenfeld1-0/+1
2019-05-31version: bump snapshot0.0.20190531Jason A. Donenfeld2-2/+2
2019-05-31tools: add wincompat layer to wg(8)Jason A. Donenfeld15-0/+321
2019-05-29tools: allow setting WG_ENDPOINT_RESOLUTION_RETRIESJason A. Donenfeld2-4/+25
2019-05-29zinc: update copyrightJason A. Donenfeld2-2/+2
2019-05-29blake2s: shorten ssse3 loopSamuel Neves1-857/+66
This (mostly) preserves the performance (as measured on Haswell and *lake) of last commit, but it drastically reduces code size. Signed-off-by: Samuel Neves <sneves@dei.uc.pt>
2019-05-29blake2s,chacha: latency tweakSamuel Neves5-618/+982
In every odd-numbered round, instead of operating over the state x00 x01 x02 x03 x05 x06 x07 x04 x10 x11 x08 x09 x15 x12 x13 x14 we operate over the rotated state x03 x00 x01 x02 x04 x05 x06 x07 x09 x10 x11 x08 x14 x15 x12 x13 The advantage here is that this requires no changes to the 'x04 x05 x06 x07' row, which is in the critical path. This results in a noticeable latency improvement of roughly R cycles, for R diagonal rounds in the primitive. In the case of BLAKE2s, which I also moved from requiring AVX to only requiring SSSE3, we save approximately 30 cycles per compression function call on Haswell and Skylake. In other words, this is an improvement of ~0.6 cpb. This idea was pointed out to me by Shunsuke Shimizu, though it appears to have been around for longer. Signed-off-by: Samuel Neves <sneves@dei.uc.pt>
2019-05-29qemu: do not check for alignment with ubsanJason A. Donenfeld1-0/+1
It insta-crashes on x86.
2019-05-29zinc: arm64: use cpu_get_elf_hwcap accessor for 5.2Jason A. Donenfeld3-2/+6
2019-05-29kbuild: account for recent upstream changesJason A. Donenfeld2-11/+11
Apparently cdd750bfb1f76fe9be8cfb53cbe77b2e811081ab changed things, so we fall back onto this hack. Reported-by: Alex Xu <alex@alxu.ca>
2019-05-29timers: add jitter on ack failure reinitiationJason A. Donenfeld1-2/+4
2019-05-29qemu: build iproute2 with libmnl supportJason A. Donenfeld1-1/+1
2019-05-29wg-quick: specify protocol to ip(8), because of inconsistenciesJason A. Donenfeld1-3/+7
2019-05-29netlink: use new strict length types in policy for 5.2Jason A. Donenfeld3-14/+29
Reported-by: Bruno Wolff III <bruno@wolff.to>
2019-05-29wg-quick: look up existing routes properlyJason A. Donenfeld1-1/+1
This was never really correct, and then 5.1 broke it entirely. Reported-by: piraty1@inbox.ru
2019-05-29qemu: use newer iproute2 and kernelJason A. Donenfeld1-9/+4
2019-05-29socket: set ignore_df=1 on xmitJoe Holden2-0/+6
This allows the kernel to generate ipv6 fragments. Apply the same to ipv4 for consistency. Signed-off-by: Joe Holden <jwh@zorins.us>
2019-04-23wg-quick: make darwin and freebsd path search strict like linuxJason A. Donenfeld2-2/+4
2019-04-23wg-quick: freebsd: workaround SIOCGIFSTATUS race in FreeBSD kernelJason A. Donenfeld1-9/+22
2019-04-14compat: udp_tunnel: force cast sk_data_readyJason A. Donenfeld1-1/+3
Reference: https://lists.zx2c4.com/pipermail/wireguard/2019-April/004081.html
2019-04-06version: bump snapshot0.0.20190406Jason A. Donenfeld2-2/+2
2019-04-06allowedips: initialize list head when removing intermediate nodesJason A. Donenfeld2-1/+5
Otherwise if this list item is later reused, we'll crash on list poison or worse. Also, add a version of Mimka's reproducer to netns.sh to catch these types of bugs in the future. Reported-by: Mimka <mikma.wg@lists.m7n.se>
2019-03-29compat: backport skb_mark_not_on_listJason A. Donenfeld1-0/+7
2019-03-27blake2s: remove outlen parameter from finalJason A. Donenfeld4-12/+11
2019-03-27blake2s: simplifySamuel Neves2-40/+12
Signed-off-by: Samuel Neves <sneves@dei.uc.pt>
2019-03-25qemu: set framewarn 1280 for 64bit and 1024 for 32bitJason A. Donenfeld14-4/+14
2019-03-25device: use skb accessor functions where possibleJason A. Donenfeld1-2/+2
Suggested-by: David Miller <davem@davemloft.net>
2019-03-25allowedips: do not use __always_inlineJason A. Donenfeld1-9/+9
DaveM doth forbid. Suggested-by: David Miller <davem@davemloft.net>
2019-03-25peerlookup: rename from hashtablesJason A. Donenfeld7-9/+9