aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/src (unfollow)
Commit message (Collapse)AuthorFilesLines
2021-01-25ipc: do not use fscanf with trailing \nJason A. Donenfeld1-1/+3
If the stream is not closed, then this winds up hanging forever. So remove the trailing \n\n and check manually after. Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-12-18sticky-sockets: do not use SO_REUSEADDRJason A. Donenfeld1-8/+0
This makes little sense for unicast UDP sockets. Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-12-13completion: add help and syncconf completionsJason A. Donenfeld1-3/+3
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-12-11wincompat: do not elevate by defaultJason A. Donenfeld1-1/+1
Elevation makes it detach from the console, which means the results are hidden. Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-12-11wincompat: add resource and manifest and enable ltoJason A. Donenfeld3-3/+70
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-11-09wincompat: recent mingw has inet_ntop/inet_ptonJason A. Donenfeld2-38/+0
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-10-29embeddable-wg-library: sync latest from netlink.hJason A. Donenfeld1-32/+35
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-10-19wg-quick: openbsd: no use for userspace supportJason A. Donenfeld1-41/+23
With alignment between the kernel and userspace, along with userspace packages, we can now rely on the kernel in the future always having wg(4). This also simplifies the interface selection logic, and stores the wg-quick interface name as the description. Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-09-15wg-quick: android: do not free iterated pointerJason A. Donenfeld1-7/+8
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-08-27version: bumpv1.0.20200827Jason A. Donenfeld1-1/+1
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-08-27Revert "wg-quick: wait on process substitutions"Jason A. Donenfeld4-49/+49
This reverts commit 26683f6c9ad18d9914b23312c221f27fd5ecab51, which means the old problem comes back. That's an issue. But waiting on process substitutions is not available with commonly used bash versions: # wg-quick up demo [#] ip link add demo type wireguard [#] wg setconf demo /dev/fd/63 /usr/bin/wg-quick: line 251: wait: pid 2955 is not a child of this shell [#] ip link delete dev demo This means we have to wait a few years before fixing this issue. IOW, bash limitation; can't fix. Reported-by: Theodore Mozzo <theodore.mozzo@gmail.com> Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-08-25wg-quick: android: use iproute2 to bring up interface instead of ndcJason A. Donenfeld1-1/+1
Android 11's ndc regresses even more, but it turns out that netd doesn't need to track up/down state via direct invocation, so just set the interface up by way of normal iproute2. Reported-by: Harsh Shandilya <me@msfjarvis.dev> Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-08-20version: bumpv1.0.20200820Jason A. Donenfeld1-1/+1
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-08-06wg-quick: wait on process substitutionsJason A. Donenfeld4-49/+49
Bash does not propagate error values, which is a bummer, but process substitutions are a useful feature. Introduce a new idiom to deal with this: either "; wait $!" after the line to propagate the error, or "|| true" to indicate explicitly that we don't care about the error. Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-08-06ctype: use non-locale-specific ctype.hJason A. Donenfeld5-14/+43
We also make these constant time, even though we're never distinguishing between bits of a secret using them. From that perspective, though, this is markedly better than the locale-specific table lookups in glibc, even though base64 characters span two cache lines and valid private keys must hit both. Co-authored-by: Samuel Neves <sneves@dei.uc.pt> Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com> Signed-off-by: Samuel Neves <sneves@dei.uc.pt>
2020-08-06pubkey: isblank is a subset of isspaceJason A. Donenfeld1-1/+1
Therefore, there's no need to test both. Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-07-28man: wg-quick: use syncconf instead of addconf for strip exampleJason A. Donenfeld1-3/+1
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-07-24systemd: add reload target to systemd unitDomonkos P. Tomcsanyi1-0/+1
Users can now run `systemctl reload wg-quick@wgnet0`, as described in the wg-quick(8) man page. Note that this won't adjust Address=, DNS=, or the various other non-wg(8) fields. Signed-off-by: Domonkos P. Tomcsanyi <domi@tomcsanyi.net> [zx2c4: use exec for bash commands to reduce excess forks, and rewrite commit message] Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-05-25wincompat: fold random into genkeyJason A. Donenfeld5-16/+6
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-05-25ipc: split into separate files per-platformJason A. Donenfeld6-1152/+1201
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-05-13version: bumpv1.0.20200513Jason A. Donenfeld1-1/+1
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-05-13ipc: openbsd: switch to array ioctl interfaceJason A. Donenfeld2-89/+80
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-05-11Makefile: remember to install all systemd unitsJason A. Donenfeld1-1/+1
Reported-by: Unit 193 <unit193@unit193.net> Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-05-10version: bumpv1.0.20200510Jason A. Donenfeld1-1/+1
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-05-10wg-quick: cleanup openbsd supportJason A. Donenfeld2-26/+35
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-05-10wg-quick: add support for openbsd kernel implementationMatt Dunwoodie1-4/+19
Signed-off-by: Matt Dunwoodie <ncon@noconroy.net>
2020-05-10ipc: cleanup openbsd supportJason A. Donenfeld5-94/+212
We also add a wg_if.h in the fallback include path. Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-05-10ipc: add support for openbsd kernel implementationMatt Dunwoodie1-3/+262
Signed-off-by: Matt Dunwoodie <ncon@noconroy.net>
2020-05-10ipc: remove extra spaceJason A. Donenfeld1-1/+1
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-05-09wg-quick: support dns search domainsJason A. Donenfeld8-36/+88
If DNS= has an IP in it, treat it as a DNS server. If DNS= has a non-IP in it, treat it as a DNS search domain. Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-05-01systemd: add wg-quick.targetMartin Hauke2-0/+3
Add file wg-quick.target, which allows starting and stopping all wg-quick@.service instances at once. Signed-off-by: Martin Hauke <mardnh@gmx.de> Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-04-20terminal: specialize color_mode to stdout onlyJason A. Donenfeld2-17/+7
By specializing this to stdout, we can cache the isatty result. Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>