aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/manager/install.go
diff options
context:
space:
mode:
authorJason A. Donenfeld <Jason@zx2c4.com>2020-11-26 14:05:21 +0100
committerJason A. Donenfeld <Jason@zx2c4.com>2020-11-26 15:07:34 +0100
commitb3b9873d1c26baa650d8092823689b1790b3ab52 (patch)
tree50bfe7517a6e9c830bd688346e88645a0655aa0b /manager/install.go
parentmanager: move legacy store from conf (diff)
downloadwireguard-windows-master.tar.xz
wireguard-windows-master.zip
fetcher: delay load anything with transitive dependencies outside of knowndllsHEADmaster
It looks like advapi32.dll loads cryptbase.dll because RtlGenRandom is forwarded to it, and cryptbase.dll isn't in knowndlls. So, even though we haven't done anything wrong by importing advapi32.dll statically, the surprising forwarding behavior means that this is a disaster. At the same time, some UI-related system modules wind up calling loadlibraryex with default arguments, so again, even though linking to things like user32.dll and such statically is fine, microsoft is doing the wrong thing inside of them. Work around the first issue by loading advapi32.dll (and others, just for good measure) delayed, and work around the latter by gimping the dll search path. Reported-by: Stefan Kanthak <stefan.kanthak@nexgo.de> Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
Diffstat (limited to 'manager/install.go')
0 files changed, 0 insertions, 0 deletions