Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | wg-quick: account for specified fwmark in auto routing mode | Jason A. Donenfeld | 2018-04-15 | 1 | -19/+23 |
| | | | | | | | | | | | If we're doing automatic routing with default routes, but the config has also specified an explicit fwmark, then use that explicit fwmark, even if it's conflicting, since the administrator has explicitly opted into using it. Also, when shutting down the interface, we only now remove the fancy rules if we're in automatic routing mode with default routes. Suggested-by: Luis Ressel <aranea@aixah.de> Reported-by: Saeid Akbari <saeidscorp@yahoo.com> | ||||
* | wg-quick.8: fix typo | Jason A. Donenfeld | 2018-04-04 | 1 | -1/+1 |
| | | | | Reported-by: Mike Pechkin <mike.pechkin@gmail.com> | ||||
* | wg-quick: hide errors on save | Jason A. Donenfeld | 2018-03-04 | 1 | -1/+1 |
| | |||||
* | wg-quick: if resolvconf/run/iface exists, use it | Jason A. Donenfeld | 2018-03-04 | 1 | -1/+1 |
| | | | | | Some older broken resolvconfs don't support resolvconf -l, but do have a file in a standard location, so use it. | ||||
* | wg-quick: if resolvconf/interface-order exists, use it | Jason A. Donenfeld | 2018-03-04 | 1 | -3/+12 |
| | | | | | | | Some older broken resolvconf implementations ignore -m, but do have an interface-order list. It's better to use this list dynamically, in case it changes, or in case it's not used by the OS's resolvconf implementation, such as in the case of systemd or openresolv. | ||||
* | global: in gnu code, use un-underscored asm | Jason A. Donenfeld | 2018-03-02 | 2 | -2/+2 |
| | |||||
* | tools: fixup errno handling | Jason A. Donenfeld | 2018-02-17 | 2 | -8/+8 |
| | |||||
* | tools: FreeBSD doesn't have EAI_NODATA | Jason A. Donenfeld | 2018-02-17 | 1 | -2/+15 |
| | |||||
* | tools: do not collide types with libc clashes | Jason A. Donenfeld | 2018-02-17 | 1 | -4/+10 |
| | |||||
* | wg(8): clarify phrasing | Jason A. Donenfeld | 2018-02-17 | 1 | -3/+3 |
| | |||||
* | tools: allow in-line comments | Jason A. Donenfeld | 2018-02-17 | 3 | -11/+17 |
| | |||||
* | tools: normalize strncpy/snprintf usage | Jason A. Donenfeld | 2018-02-14 | 4 | -18/+22 |
| | |||||
* | wg-quick: match from beginning rather than shift right | Jason A. Donenfeld | 2018-02-06 | 1 | -2/+2 |
| | | | | | Before, this meant that it simply took the last 15 characters, instead of erroring out when there's more than 15 chars. | ||||
* | tools: endian.h is not portable | Jason A. Donenfeld | 2018-02-05 | 1 | -4/+9 |
| | |||||
* | curve25519: replace fiat64 with faster hacl64 | Jason A. Donenfeld | 2018-02-01 | 1 | -3/+3 |
| | | | | | This reverts commit da4ff396cc5d5e0ff21f9ecbc2f951c048c63fff and adds some optimizations to hacl64. | ||||
* | curve25519: replace hacl64 with fiat64 | Jason A. Donenfeld | 2018-02-01 | 1 | -8/+3 |
| | | | | | | | | | | For now, it's faster: hacl64: 109782 cycles per call fiat64: 108984 cycles per call It's quite possible this commit will be reverted with nice changes from INRIA, though. | ||||
* | tools: dedup secret normalization | Jason A. Donenfeld | 2018-01-31 | 1 | -7/+1 |
| | |||||
* | tools: fread doesn't change errno | Jason A. Donenfeld | 2018-01-30 | 1 | -4/+0 |
| | | | | | Thus we might be responding to an old errno, which could cause this to unnecessarily fail. | ||||
* | tools: share curve25519 implementations with kernel | Jason A. Donenfeld | 2018-01-23 | 1 | -1539/+30 |
| | |||||
* | curve25519-fiat32: uninline certain functions | Jason A. Donenfeld | 2018-01-18 | 1 | -4/+4 |
| | | | | | | | | | | | While this has a negative performance impact on x86_64, it has a positive performance impact on smaller machines, which is where we're actually using this code. For example, an A53: Before: fiat32: 228605 cycles per call After: fiat32: 188307 cycles per call | ||||
* | tools: import new curve25519 implementations | Jason A. Donenfeld | 2018-01-18 | 1 | -1129/+1423 |
| | |||||
* | tools: plug memleak in config error path | Jason A. Donenfeld | 2018-01-18 | 1 | -0/+1 |
| | |||||
* | wg-quick: ifnames have max len of 15 | Jason A. Donenfeld | 2018-01-10 | 2 | -3/+3 |
| | |||||
* | global: year bump | Jason A. Donenfeld | 2018-01-03 | 25 | -25/+25 |
| | |||||
* | wg-quick: dumber matching for default routes | Jason A. Donenfeld | 2017-12-13 | 1 | -1/+1 |
| | |||||
* | wg-quick: add the "Table" config option | Luis Ressel | 2017-12-13 | 2 | -3/+18 |
| | | | | | | | | * Table=auto (default) selects the current behaviour * Table=off disables creation of routes altogether * All other values are passed through to "ip route add"'s table option Signed-off-by: Luis Ressel <aranea@aixah.de> | ||||
* | global: add SPDX tags to all files | Greg Kroah-Hartman | 2017-12-09 | 25 | -50/+89 |
| | | | | | | | | | | | | | 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> | ||||
* | tools: no need to put this on the stack | Jason A. Donenfeld | 2017-12-03 | 1 | -1/+1 |
| | |||||
* | tools: remove undocumented unused syntax | Jason A. Donenfeld | 2017-12-03 | 1 | -11/+0 |
| | |||||
* | tools: fix removing preshared keys | Jason A. Donenfeld | 2017-11-23 | 1 | -69/+55 |
| | | | | Also clean up related logic quite a bit and add unit tests. | ||||
* | global: switch from timeval to timespec | Jason A. Donenfeld | 2017-11-22 | 3 | -7/+7 |
| | | | | | | | | | | | | | | | | | | | 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. | ||||
* | tools: tighten up strtoul parsing | Jason A. Donenfeld | 2017-11-17 | 2 | -36/+62 |
| | | | | Reported-by: Cedric Buxin <cedric.buxin@izri.org> | ||||
* | wg-quick: document localhost exception and v6 rule | Jason A. Donenfeld | 2017-11-12 | 1 | -3/+4 |
| | | | | Reported-by: Hermann Lienstromberg <nurtic-vibe@grmml.net> | ||||
* | tools: allow for NULL keys everywhere | Jason A. Donenfeld | 2017-11-11 | 5 | -29/+50 |
| | |||||
* | tools: remove ioctl cruft | Jason A. Donenfeld | 2017-11-11 | 1 | -4/+0 |
| | |||||
* | wg-quick: allow for tabs in keys | Jason A. Donenfeld | 2017-11-10 | 1 | -2/+2 |
| | |||||
* | wg-quick: stat the correct enclosing folder of config file | Jason A. Donenfeld | 2017-11-10 | 1 | -1/+2 |
| | |||||
* | wg-quick: save all hooks on save | Jason A. Donenfeld | 2017-11-01 | 1 | -5/+13 |
| | |||||
* | wg-quick: fsync the temporary file before renaming | Jason A. Donenfeld | 2017-10-31 | 1 | -0/+1 |
| | | | | | | | This ensures that on an unclean shutdown, we either see the old content or the new content, but not empty content. Suggested-by: Ka Ho Ng <ngkaho1234@gmail.com> | ||||
* | wg-quick: allow for saving existing interface | Jason A. Donenfeld | 2017-10-31 | 2 | -2/+14 |
| | |||||
* | tools: correct type for CTRL_ATTR_FAMILY_ID | Jason A. Donenfeld | 2017-10-31 | 1 | -4/+4 |
| | | | | Suggested-by: Jörg Thalheim <joerg@thalheim.io> | ||||
* | wg-quick: allow for the hatchet, but not by default | Jason A. Donenfeld | 2017-10-31 | 1 | -0/+2 |
| | |||||
* | wg-quick: remember to rewind DNS settings on failure | Jason A. Donenfeld | 2017-10-31 | 1 | -3/+8 |
| | |||||
* | wg-quick: allow specifiying multiple hooks | Jason A. Donenfeld | 2017-10-31 | 2 | -18/+21 |
| | |||||
* | global: style nits | Jason A. Donenfeld | 2017-10-31 | 10 | -110/+201 |
| | |||||
* | global: infuriating kernel iterator style | Jason A. Donenfeld | 2017-10-31 | 4 | -19/+19 |
| | | | | | | | | | | | | | | | | | 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. | ||||
* | tools: account for padding being in zero attribute | Jason A. Donenfeld | 2017-10-17 | 1 | -0/+6 |
| | |||||
* | tools: newline after warning | Jason A. Donenfeld | 2017-10-17 | 1 | -1/+1 |
| | |||||
* | tools: style | Jason A. Donenfeld | 2017-10-17 | 1 | -1/+1 |
| | |||||
* | tools: add pass example to wg-quick man page | Jason A. Donenfeld | 2017-10-17 | 1 | -22/+9 |
| |