Patched wg-quick for FreeBSD
Find a file
Jason A. Donenfeld bc1f6be5db global: switch from timeval to timespec
This gets us nanoseconds instead of microseconds, which is better, and
we can do this pretty much without freaking out existing userspace,
which doesn't actually make use of the nano/micro seconds field:

zx2c4@thinkpad ~ $ cat a.c
void main()
{
        puts(sizeof(struct timeval) == sizeof(struct timespec) ? "success" : "failure");
}
zx2c4@thinkpad ~ $ gcc a.c -m64 && ./a.out
success
zx2c4@thinkpad ~ $ gcc a.c -m32 && ./a.out
success

This doesn't solve y2038 problem, but timespec64 isn't yet a thing in
userspace.

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2017-11-22 18:32:48 +01:00
contrib wg-quick: allow for tabs in keys 2017-11-10 16:20:09 +09:00
src global: switch from timeval to timespec 2017-11-22 18:32:48 +01:00
.gitignore gitignore: ignore split DWARF debug info 2017-07-03 23:06:27 +02:00
COPYING Initial commit 2016-06-25 16:48:39 +02:00
README.md global: wireguard.io --> wireguard.com 2017-07-20 03:37:39 +02:00

WireGuard — fast, modern, secure kernel VPN tunnel

by Jason A. Donenfeld of Edge Security

WireGuard is a novel VPN that runs inside the Linux Kernel and utilizes state-of-the-art cryptography. It aims to be faster, simpler, leaner, and more useful than IPSec, while avoiding the massive headache. It intends to be considerably more performant than OpenVPN. WireGuard is designed as a general purpose VPN for running on embedded interfaces and super computers alike, fit for many different circumstances. It runs over UDP.

More information may be found at WireGuard.com.

License

This project is released under the GPLv2.