aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/Makefile (follow)
Commit message (Collapse)AuthorAgeFilesLines
* overlay: stub out crypto/rand FIPS140 garbageHEADmasterJason A. Donenfeld4 days1-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The Go crypto library used to be simple and nice and an example of how to do things well. Unfortunately, the addition of FIPS140 to it has brought disgusting enterprise patterns and gummed up the code. One place this really comes out is in the insane infrastructure behind the RNG. It really only should be calling the system random functions and nothing more. But in contemporary Go, simply calling into the RNG brings along with it in the binary: - A bizarre voodoo magic userspace entropy collector - A specialized SHA384 implementation for said entropy collector - An AES implementation - An AES-NI accelerated AES implementation - A CTR implementation for AES - A GCM implementation for AES - Some CPU detection code - An implementation of some FIPS-specified DRBG algorithm - An HMAC implementation - A SHA256 implementation - An AVX2-accelerated SHA256 implementation - A SHA3 implementation (including cSHAKE) - An AVX2-accelerated SHA3 implementation - A SHA512 implementation - Some generic XOR-bytes routines - The actual syscall wrappers for getting random numbers Obviously this is completely insane. There's a tangled mess of components including eachother, a disorganized patchwork of FIPS code and BoringCrypto code and enterprisey API hooks and self checks and auto-included initializers. It seems like a mess of a library these days. So, here we beat down this madness by using a Go build overlay to replace various parts of the crypto library with stub functions. This is pretty nasty. But at least it compiles out some of this junk. I'm trying to fix this upstream in the meanwhile [1], and so we'll see what comes of that. Link: https://github.com/golang/go/issues/81639 Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* build: bump to go 1.27.1Jason A. Donenfeld6 days1-1/+1
| | | | Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* build: bump wireguard-nt to 1.1Jason A. Donenfeld2026-05-071-1/+1
| | | | Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* build: bump to go 1.26.2Jason A. Donenfeld2026-04-201-1/+1
| | | | Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* locales: update translations from crowdinJason A. Donenfeld2026-04-201-1/+2
| | | | Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* build: bump wireguard-nt to 1.0Jason A. Donenfeld2026-04-181-1/+1
| | | | Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* build: bump wireguard-nt to 0.11Jason A. Donenfeld2026-04-101-1/+1
| | | | Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* Makefile: allow setting deployment architectureJason A. Donenfeld2026-03-211-1/+2
| | | | Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* global: raise min windows version to 10Jason A. Donenfeld2026-03-211-1/+1
| | | | | | | | | | | | | | | Since we're also bumping the PE subsystem header to 10.0, this means we need a _load_config with the proper flags. So there's some work to be done here. This also means bumping LLVM and Go builds. In the case of Go, the patch is still pending: https://go-review.googlesource.com/c/go/+/756680 , so it's a custom build. Remove lots of compatibility code and hacks. Also update the installer to display a useful message. Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* build: update go depsJason A. Donenfeld2026-03-181-2/+2
| | | | Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* build: bump to go 1.20.14Simon Rozman2025-03-181-1/+1
| | | | | | | | This fixes "Import tunnel(s) from file" and any other file open/save dialog popup crash on ARM64. Reported-by: Damjan Perenič <dperenic@connect.ust.hk> Signed-off-by: Simon Rozman <simon@rozman.si>
* build: bump to go1.18Jason A. Donenfeld2022-03-161-2/+2
| | | | Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* Makefile: choose newest version of GoJason A. Donenfeld2022-01-181-1/+1
| | | | | | | | | | | | | Now that these are sorted properly, we can rely on the top one being the newest. Before, we assumed the last one was the newest, which was only true during betas and rcs, which required us to swap back and forth between the first one and the last one. But even then, the last one wouldn't always be the latest beta! So sometimes we had to change it to the second to last one. And on and on with madness. In other words, before the list was basically unsorted. But now that it's sorted, we can just use the top one always, which is what we want. Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* build: omit build info from binaryJason A. Donenfeld2021-12-161-1/+1
| | | | Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* global: update to go 1.18 beta1Jason A. Donenfeld2021-12-161-2/+2
| | | | Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* build: remove patcherJason A. Donenfeld2021-12-141-2/+1
| | | | | | This should be easy to revert when we want to add it back. Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* build: update to go 1.17.4 and drop upstreamed patchesJason A. Donenfeld2021-12-021-1/+1
| | | | Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* build: switch to go.devJason A. Donenfeld2021-11-251-2/+2
| | | | Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* build: bump to go 1.17.3Jason A. Donenfeld2021-11-061-1/+2
| | | | Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* build: stop building for arm32Jason A. Donenfeld2021-10-211-10/+2
| | | | Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* global: remove wireguard-go/Wintun implementationJason A. Donenfeld2021-10-161-13/+6
| | | | Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* build: bump to wintun 0.14.1Jason A. Donenfeld2021-10-161-1/+1
| | | | Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* build: bump to go 1.17.2Jason A. Donenfeld2021-10-161-1/+1
| | | | Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* build: bump wgnt to 0.10.1Jason A. Donenfeld2021-10-161-1/+1
| | | | Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* build: bump to wintun 0.14Jason A. Donenfeld2021-10-121-1/+1
| | | | Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* build: bump to wgnt 0.10Jason A. Donenfeld2021-10-111-1/+1
| | | | Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* build: bump to wgnt 0.9Jason A. Donenfeld2021-09-241-1/+1
| | | | Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* build: bump to wgnt 0.8Jason A. Donenfeld2021-09-151-1/+1
| | | | Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* build: bump to wgnt 0.7Jason A. Donenfeld2021-09-131-1/+1
| | | | Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* build: bump to go 1.17.1Jason A. Donenfeld2021-09-111-1/+1
| | | | Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* build: bump to wgnt 0.6Jason A. Donenfeld2021-09-091-1/+1
| | | | Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* build: bump to wgnt 0.5Jason A. Donenfeld2021-09-071-1/+1
| | | | Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* build: bump to go 1.17Jason A. Donenfeld2021-08-181-1/+1
| | | | Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* build: bump to wgnt 0.4Jason A. Donenfeld2021-08-101-1/+1
| | | | Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* build: bump wireguard-ntJason A. Donenfeld2021-08-051-1/+1
| | | | Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* build: bump wireguard-ntJason A. Donenfeld2021-08-031-1/+1
| | | | Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* driver: introduce new module for talking with kernel driverJason A. Donenfeld2021-08-021-6/+13
| | | | Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* build: bump to wintun 0.13Jason A. Donenfeld2021-08-021-1/+1
| | | | Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* build: use official go builds and patch locallyJason A. Donenfeld2021-08-021-3/+5
| | | | Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* build: bump wintunJason A. Donenfeld2021-06-251-1/+1
| | | | Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* build: bump to go 1.17beta1Jason A. Donenfeld2021-06-181-1/+1
| | | | | | | Also, enable arm64 embeddable tunnel service building. Requested-by: Dmitry Smirnov <dmitry.smirnov@netprotect.com> Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* build: bump wintunJason A. Donenfeld2021-05-111-1/+1
| | | | Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* build: bump to wintun 0.10.4Jason A. Donenfeld2021-05-051-1/+1
| | | | Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* build: bump go patchesJason A. Donenfeld2021-03-221-1/+1
| | | | | | | | | This is for: https://github.com/golang/go/issues/45138 and https://go-review.googlesource.com/c/go/+/303273/ and it bumps to Go 1.16.2. Reported-by: Bradley Saulteaux <bradsoto@protonmail.com> Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* build: bump go treeJason A. Donenfeld2021-02-281-1/+1
| | | | | | | https://go-review.googlesource.com/c/go/+/297390 https://go-review.googlesource.com/c/go/+/297391 Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* build: bump to wintun 0.10.2 and go toolchainJason A. Donenfeld2021-02-251-2/+2
| | | | Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* build: do not bootstrap goJason A. Donenfeld2021-02-241-8/+4
| | | | Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* build: port to arm64Jason A. Donenfeld2021-02-181-9/+14
| | | | | | | | | | We build Go from modified-source with a bootstrap version, rather than shipping so many patches in this repo. This commit also removes the previous WOW hacks, and goes back to strictly forbidding WOW. Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* build: bump wintun to 0.10.1 and wg-go tooJason A. Donenfeld2021-02-031-1/+1
| | | | Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* build: use go 1.16rc1Jason A. Donenfeld2021-02-011-2/+1
| | | | Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>