aboutsummaryrefslogtreecommitdiffstatshomepage
Commit message (Collapse)AuthorAgeFilesLines
* build: opt-in to resource loading of wintun.dllJason A. Donenfeld2020-11-163-4/+2
| | | | Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* ui: use resource numbers instead of resource indicesJason A. Donenfeld2020-11-165-10/+10
| | | | | | | | | This makes it stable between Windows versions. HOWEVER! We're still using "1" instead of SHIDI_SHIELD_INTERNAL, because the latter is named instead of numbered. This is a TODO item. Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* ui: remove systray popup menu tunnel listJason A. Donenfeld2020-11-161-178/+55
| | | | | | | | | | Should user have a huge list of tunnels, the menu becomes impossible to navigate. In the absence of any better idea, how to make the popup menu usable in such tunnel quantities, the tunnel activation via systray popup menu was removed, and instead we have a single deactivate button. Signed-off-by: Simon Rozman <simon@rozman.si> Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* go-patches: support 8 callback arguments on armJason A. Donenfeld2020-11-139-8/+68
| | | | Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* main: only do Wow64 check on ARMJason A. Donenfeld2020-11-131-0/+4
| | | | Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* installer: suppress ice03 errorsJason A. Donenfeld2020-11-131-0/+1
| | | | Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* installer: clean-up adapters and Wintun driver on uninstallSimon Rozman2020-11-132-1/+137
| | | | | Signed-off-by: Simon Rozman <simon@rozman.si> Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* build: sign ARM and ARM64 binariesSimon Rozman2020-11-131-1/+1
| | | | Signed-off-by: Simon Rozman <simon@rozman.si>
* installer: updater: introduce ARM64 MSI packagesSimon Rozman2020-11-139-14/+186
| | | | | | Windows 10 ARM64 refuses to install ARM MSI. Signed-off-by: Simon Rozman <simon@rozman.si>
* build: make arm64 binary by copying arm binaryJason A. Donenfeld2020-11-133-3/+13
| | | | Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* build: bump wintun hashJason A. Donenfeld2020-11-133-4/+4
| | | | Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* main: add command line adapter cleanupJason A. Donenfeld2020-11-131-0/+25
| | | | Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* installer: enable ARM MSI buildingSimon Rozman2020-11-134-4/+11
| | | | Signed-off-by: Simon Rozman <simon@rozman.si>
* build: bump wireguard-tools for mingw improvementsJason A. Donenfeld2020-11-131-1/+1
| | | | Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* build: set codepage at command line for rcJason A. Donenfeld2020-11-132-2/+2
| | | | | | Work around limitation of llvm-rc. Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* build: rebuild linker after patchingJason A. Donenfeld2020-11-131-1/+4
| | | | Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* build: new makefile downloaderJason A. Donenfeld2020-11-132-18/+32
| | | | Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* build: add linker patches for llvm-rcJason A. Donenfeld2020-11-138-77/+545
| | | | Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* global: go generateSimon Rozman2020-11-137-1747/+1641
| | | | Signed-off-by: Simon Rozman <simon@rozman.si>
* build: filter out .deps from recursive wildcardJason A. Donenfeld2020-11-131-2/+2
| | | | Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* global: switch to using %w instead of %v for ErrorfJason A. Donenfeld2020-11-139-70/+70
| | | | Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* build: remove cgoJason A. Donenfeld2020-11-134-18/+5
| | | | | | This doesn't yet build but we'll get there. Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* syntax: port to goSimon Rozman2020-11-137-1159/+1014
| | | | | | | | | Arm has no CGo support, so port the syntax editor C code to Go and hope that it's fast enough. This is a pretty literal/unsafe translation from the C. Signed-off-by: Simon Rozman <simon@rozman.si> Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* build: remove duplicated ld flagsJason A. Donenfeld2020-11-132-4/+0
| | | | | | These are finally in Go 1.15. Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* installer: move wg.exe to C:\Program Files\WireGuardSimon Rozman2020-11-132-14/+3
| | | | | | ...and append C:\Program Files\WireGuard to the path. Signed-off-by: Simon Rozman <simon@rozman.si>
* build: switch to using llvm compilerJason A. Donenfeld2020-11-132-9/+6
| | | | Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* build: work with llvm-rc and use numbered iconsJason A. Donenfeld2020-11-134-13/+16
| | | | | | | It's hard to keep these stable between resource compilers, so just use numbers, and roll with 7 to match rsrc/walk. Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* build: add wintun 0.9 and arm support to makefileJason A. Donenfeld2020-11-131-8/+29
| | | | Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* manager: add TcpIp service dependency for tunnelsJason A. Donenfeld2020-11-131-1/+1
| | | | | | | | Wintun waits for various TcpIp keys to populate, so have the tunnel service depend on the TcpIp service. Reported-by: Ferad Zyulkyarov <feradz@gmail.com> Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* build: enable arm buildingSimon Rozman2020-11-132-0/+4
| | | | Signed-off-by: Simon Rozman <simon@rozman.si>
* version: make native GoSimon Rozman2020-11-137-13/+20
| | | | | | | Arm has no CGo support. Signed-off-by: Simon Rozman <simon@rozman.si> Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* manager: adopt new Wintun APISimon Rozman2020-11-132-5/+5
| | | | Signed-off-by: Simon Rozman <simon@rozman.si>
* wintun: move to RCDATA resourceSimon Rozman2020-11-134-15/+4
| | | | | Signed-off-by: Simon Rozman <simon@rozman.si> Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* firewall, winipcfg: add arm and arm64 build tagsJason A. Donenfeld2020-11-136-0/+12
| | | | | | | | The structs stay the same size for the respective 32bit and 64bit platforms, so split things into _32 and _64. Signed-off-by: Simon Rozman <simon@rozman.si> Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* mod: bumpJason A. Donenfeld2020-11-132-29/+29
| | | | Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* winipcfg, embeddable-dll-service, wintrust: fix Go 1.15 checkptr violationsBrad Fitzpatrick2020-10-216-40/+47
| | | | | | | | | | Avoids "converted pointer straddles allocation" failures at runtime when building binaries in race mode with Go 1.15, which enables checkptr: https://golang.org/doc/go1.15#windows Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com> [Jason: Note Go 1.16/1.17 todo item.] Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* build: use crowdin backdoor instead of api keyJason A. Donenfeld2020-10-141-2/+1
| | | | | Suggested-by: Harsh Shandilya <me@msfjarvis.dev> Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* tunnel/winipcfg: set SysProcAttr.HideWindow when running netsh.shBrad Fitzpatrick2020-10-041-0/+3
| | | | | | | | Prevents cmd.exe window flashes when running binaries in elevated interactive contexts for debugging. Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com> Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* go: update to 1.15.2Jason A. Donenfeld2020-09-113-9/+149
| | | | Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* locales: add ro and skJason A. Donenfeld2020-09-075-194/+2945
| | | | Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* build: update C toolchainsJason A. Donenfeld2020-09-071-2/+2
| | | | Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* README: mention CrowdInJason A. Donenfeld2020-08-181-1/+1
| | | | Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* go: use highres timer on newer Windows 10Jason A. Donenfeld2020-08-181-0/+395
| | | | | | | | | | | WireGuard makes heavy use of timers, and the low precision of Windows timers as currently used in Go isn't very nice, and also seems to result in worse battery life because of the gross winmm.dll timerBeginPeriod trick. John Starks suggested this new parameter to make a high resolution timer on NT, and Alex implemented it, so import Alex's test patch to see how this goes. Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* go: remove exit(2) from ctrl+c handlerJason A. Donenfeld2020-08-181-0/+44
| | | | | | | | | | Simon reported that he'd have hard to diagnose exits at boot time with Go 1.14 but not with 1.13. It turns out that the ctrl+c handler added by 1.14 at some point in the cycle includes some wrong behavior forcing exits on various services signals. In an attempt to address this, this commit backports my patch from 1.16 that removes this errant path. Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* build: re-add patcherJason A. Donenfeld2020-08-182-4/+15
| | | | Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* build: update to go 1.15Jason A. Donenfeld2020-08-181-1/+1
| | | | Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* locale: sync translations and rework enumerationJason A. Donenfeld2020-08-1819-757/+5107
| | | | | | | We now enumerate directories in locale/ and rename them if Crowdin is giving us a different language code. Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* tunnel: use conn.BindSocketToInterface typeDavid Crawshaw2020-07-143-18/+23
| | | | | Signed-off-by: David Crawshaw <crawshaw@tailscale.com> Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* winipcfg: add missing error case to dns domain settingJason A. Donenfeld2020-06-091-1/+3
| | | | Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* syntax: skip highlights if too many spansJason A. Donenfeld2020-06-091-5/+9
| | | | | | | | The rich text control is slow, so keep in plain text if there's too many. Suggested-by: Simon Rozman <simon@rozman.si> Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>