Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Crash in wsl-helper certificates #6307

Closed
jackmtpt opened this issue Jan 11, 2024 · 3 comments
Closed

Crash in wsl-helper certificates #6307

jackmtpt opened this issue Jan 11, 2024 · 3 comments
Assignees
Milestone

Comments

@jackmtpt
Copy link

Actual Behavior

I'm seeing a very odd issue when trying to start Rancher Desktop. It gets stuck on the "installingCA certificates" step, and in the networking-ca.log file I have the following golang crash:

unexpected fault address 0x28adff06434
fatal error: fault
[signal 0xc0000005 code=0x0 addr=0x28adff06434 pc=0x42c11c]

goroutine 1 [running]:
runtime.throw({0x9c1937?, 0x4820ae?})
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/panic.go:1077 +0x65 fp=0xc0003619e8 sp=0xc0003619b8 pc=0x3fafe5
runtime.sigpanic()
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/signal_windows.go:377 +0xd0 fp=0xc000361a30 sp=0xc0003619e8 pc=0x40eef0
runtime.memmove()
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/memmove_amd64.s:149 +0xfc fp=0xc000361a38 sp=0xc000361a30 pc=0x42c11c
encoding/base64.(*encoder).Write(0xc00011f200, {0x28adff06080?, 0x11?, 0x9c1c21?})
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/encoding/base64/base64.go:250 +0x1cd fp=0xc000361ab8 sp=0xc000361a38 pc=0x4740cd
encoding/pem.Encode({0xbab6e0?, 0xc00006c028}, 0xc000361ce0)
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/encoding/pem/pem.go:292 +0x357 fp=0xc000361c70 sp=0xc000361ab8 pc=0x482557
github.com/rancher-sandbox/rancher-desktop/src/go/wsl-helper/cmd.glob..func1(0xc000146f00?, {0x9c14f4?, 0x4?, 0x9c14f8?})
	D:/a/rancher-desktop/rancher-desktop/src/go/wsl-helper/cmd/certificates_windows.go:54 +0x1b5 fp=0xc000361d20 sp=0xc000361c70 pc=0x8c4195
github.com/spf13/cobra.(*Command).execute(0xf45060, {0xfa0fc0, 0x0, 0x0})
	C:/Users/runneradmin/go/pkg/mod/github.com/spf13/cobra@v1.7.0/command.go:940 +0x87c fp=0xc000361e58 sp=0xc000361d20 pc=0x56cf5c
github.com/spf13/cobra.(*Command).ExecuteC(0xf45be0)
	C:/Users/runneradmin/go/pkg/mod/github.com/spf13/cobra@v1.7.0/command.go:1068 +0x3a5 fp=0xc000361f10 sp=0xc000361e58 pc=0x56d785
github.com/spf13/cobra.(*Command).Execute(...)
	C:/Users/runneradmin/go/pkg/mod/github.com/spf13/cobra@v1.7.0/command.go:992
github.com/rancher-sandbox/rancher-desktop/src/go/wsl-helper/cmd.Execute()
	D:/a/rancher-desktop/rancher-desktop/src/go/wsl-helper/cmd/root.go:39 +0x1a fp=0xc000361f30 sp=0xc000361f10 pc=0x8c46ba
main.main()
	D:/a/rancher-desktop/rancher-desktop/src/go/wsl-helper/main.go:21 +0xf fp=0xc000361f40 sp=0xc000361f30 pc=0x8c4b8f
runtime.main()
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/proc.go:267 +0x2b2 fp=0xc000361fe0 sp=0xc000361f40 pc=0x3fd832
runtime.goexit()
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/asm_amd64.s:1650 +0x1 fp=0xc000361fe8 sp=0xc000361fe0 pc=0x42b241

goroutine 2 [force gc (idle)]:
runtime.gopark(0x0?, 0x0?, 0x0?, 0x0?, 0x0?)
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/proc.go:398 +0xce fp=0xc000065fa8 sp=0xc000065f88 pc=0x3fdc4e
runtime.goparkunlock(...)
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/proc.go:404
runtime.forcegchelper()
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/proc.go:322 +0xb8 fp=0xc000065fe0 sp=0xc000065fa8 pc=0x3fdad8
runtime.goexit()
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/asm_amd64.s:1650 +0x1 fp=0xc000065fe8 sp=0xc000065fe0 pc=0x42b241
created by runtime.init.6 in goroutine 1
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/proc.go:310 +0x1a

goroutine 3 [GC sweep wait]:
runtime.gopark(0x1?, 0x0?, 0x0?, 0x0?, 0x0?)
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/proc.go:398 +0xce fp=0xc000067f78 sp=0xc000067f58 pc=0x3fdc4e
runtime.goparkunlock(...)
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/proc.go:404
runtime.bgsweep(0x0?)
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/mgcsweep.go:321 +0xdf fp=0xc000067fc8 sp=0xc000067f78 pc=0x3e82ff
runtime.gcenable.func1()
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/mgc.go:200 +0x25 fp=0xc000067fe0 sp=0xc000067fc8 pc=0x3dd445
runtime.goexit()
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/asm_amd64.s:1650 +0x1 fp=0xc000067fe8 sp=0xc000067fe0 pc=0x42b241
created by runtime.gcenable in goroutine 1
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/mgc.go:200 +0x66

goroutine 4 [GC scavenge wait]:
runtime.gopark(0xc000072000?, 0xba7028?, 0x0?, 0x0?, 0x0?)
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/proc.go:398 +0xce fp=0xc000079f70 sp=0xc000079f50 pc=0x3fdc4e
runtime.goparkunlock(...)
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/proc.go:404
runtime.(*scavengerState).park(0xf4c6c0)
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/mgcscavenge.go:425 +0x49 fp=0xc000079fa0 sp=0xc000079f70 pc=0x3e5b89
runtime.bgscavenge(0x0?)
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/mgcscavenge.go:658 +0x59 fp=0xc000079fc8 sp=0xc000079fa0 pc=0x3e6139
runtime.gcenable.func2()
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/mgc.go:201 +0x25 fp=0xc000079fe0 sp=0xc000079fc8 pc=0x3dd3e5
runtime.goexit()
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/asm_amd64.s:1650 +0x1 fp=0xc000079fe8 sp=0xc000079fe0 pc=0x42b241
created by runtime.gcenable in goroutine 1
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/mgc.go:201 +0xa5

goroutine 5 [finalizer wait]:
runtime.gopark(0x3d009e?, 0x28ae010c6a8?, 0x0?, 0x0?, 0x0?)
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/proc.go:398 +0xce fp=0xc000069e20 sp=0xc000069e00 pc=0x3fdc4e
runtime.runfinq()
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/mfinal.go:193 +0x107 fp=0xc000069fe0 sp=0xc000069e20 pc=0x3dc4a7
runtime.goexit()
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/asm_amd64.s:1650 +0x1 fp=0xc000069fe8 sp=0xc000069fe0 pc=0x42b241
created by runtime.createfing in goroutine 1
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/mfinal.go:163 +0x3d

goroutine 18 [GC worker (idle)]:
runtime.gopark(0x0?, 0x0?, 0x0?, 0x0?, 0x0?)
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/proc.go:398 +0xce fp=0xc000075f50 sp=0xc000075f30 pc=0x3fdc4e
runtime.gcBgMarkWorker()
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/mgc.go:1295 +0xe5 fp=0xc000075fe0 sp=0xc000075f50 pc=0x3df045
runtime.goexit()
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/asm_amd64.s:1650 +0x1 fp=0xc000075fe8 sp=0xc000075fe0 pc=0x42b241
created by runtime.gcBgMarkStartWorkers in goroutine 1
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/mgc.go:1219 +0x1c

goroutine 19 [GC worker (idle)]:
runtime.gopark(0x0?, 0x0?, 0x0?, 0x0?, 0x0?)
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/proc.go:398 +0xce fp=0xc000077f50 sp=0xc000077f30 pc=0x3fdc4e
runtime.gcBgMarkWorker()
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/mgc.go:1295 +0xe5 fp=0xc000077fe0 sp=0xc000077f50 pc=0x3df045
runtime.goexit()
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/asm_amd64.s:1650 +0x1 fp=0xc000077fe8 sp=0xc000077fe0 pc=0x42b241
created by runtime.gcBgMarkStartWorkers in goroutine 1
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/mgc.go:1219 +0x1c

goroutine 20 [GC worker (idle)]:
runtime.gopark(0x0?, 0x0?, 0x0?, 0x0?, 0x0?)
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/proc.go:398 +0xce fp=0xc0000bdf50 sp=0xc0000bdf30 pc=0x3fdc4e
runtime.gcBgMarkWorker()
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/mgc.go:1295 +0xe5 fp=0xc0000bdfe0 sp=0xc0000bdf50 pc=0x3df045
runtime.goexit()
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/asm_amd64.s:1650 +0x1 fp=0xc0000bdfe8 sp=0xc0000bdfe0 pc=0x42b241
created by runtime.gcBgMarkStartWorkers in goroutine 1
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/mgc.go:1219 +0x1c

goroutine 6 [GC worker (idle)]:
runtime.gopark(0x0?, 0x0?, 0x0?, 0x0?, 0x0?)
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/proc.go:398 +0xce fp=0xc00007bf50 sp=0xc00007bf30 pc=0x3fdc4e
runtime.gcBgMarkWorker()
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/mgc.go:1295 +0xe5 fp=0xc00007bfe0 sp=0xc00007bf50 pc=0x3df045
runtime.goexit()
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/asm_amd64.s:1650 +0x1 fp=0xc00007bfe8 sp=0xc00007bfe0 pc=0x42b241
created by runtime.gcBgMarkStartWorkers in goroutine 1
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/mgc.go:1219 +0x1c

goroutine 34 [GC worker (idle)]:
runtime.gopark(0x0?, 0x0?, 0x0?, 0x0?, 0x0?)
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/proc.go:398 +0xce fp=0xc0000b9f50 sp=0xc0000b9f30 pc=0x3fdc4e
runtime.gcBgMarkWorker()
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/mgc.go:1295 +0xe5 fp=0xc0000b9fe0 sp=0xc0000b9f50 pc=0x3df045
runtime.goexit()
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/asm_amd64.s:1650 +0x1 fp=0xc0000b9fe8 sp=0xc0000b9fe0 pc=0x42b241
created by runtime.gcBgMarkStartWorkers in goroutine 1
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/mgc.go:1219 +0x1c

goroutine 7 [GC worker (idle)]:
runtime.gopark(0x0?, 0x0?, 0x0?, 0x0?, 0x0?)
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/proc.go:398 +0xce fp=0xc000347f50 sp=0xc000347f30 pc=0x3fdc4e
runtime.gcBgMarkWorker()
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/mgc.go:1295 +0xe5 fp=0xc000347fe0 sp=0xc000347f50 pc=0x3df045
runtime.goexit()
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/asm_amd64.s:1650 +0x1 fp=0xc000347fe8 sp=0xc000347fe0 pc=0x42b241
created by runtime.gcBgMarkStartWorkers in goroutine 1
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/mgc.go:1219 +0x1c

goroutine 8 [GC worker (idle)]:
runtime.gopark(0x0?, 0x0?, 0x0?, 0x0?, 0x0?)
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/proc.go:398 +0xce fp=0xc000349f50 sp=0xc000349f30 pc=0x3fdc4e
runtime.gcBgMarkWorker()
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/mgc.go:1295 +0xe5 fp=0xc000349fe0 sp=0xc000349f50 pc=0x3df045
runtime.goexit()
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/asm_amd64.s:1650 +0x1 fp=0xc000349fe8 sp=0xc000349fe0 pc=0x42b241
created by runtime.gcBgMarkStartWorkers in goroutine 1
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/mgc.go:1219 +0x1c

goroutine 21 [GC worker (idle)]:
runtime.gopark(0x0?, 0x0?, 0x0?, 0x0?, 0x0?)
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/proc.go:398 +0xce fp=0xc0000bff50 sp=0xc0000bff30 pc=0x3fdc4e
runtime.gcBgMarkWorker()
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/mgc.go:1295 +0xe5 fp=0xc0000bffe0 sp=0xc0000bff50 pc=0x3df045
runtime.goexit()
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/asm_amd64.s:1650 +0x1 fp=0xc0000bffe8 sp=0xc0000bffe0 pc=0x42b241
created by runtime.gcBgMarkStartWorkers in goroutine 1
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/mgc.go:1219 +0x1c

goroutine 9 [GC worker (idle)]:
runtime.gopark(0x0?, 0x0?, 0x0?, 0x0?, 0x0?)
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/proc.go:398 +0xce fp=0xc000343f50 sp=0xc000343f30 pc=0x3fdc4e
runtime.gcBgMarkWorker()
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/mgc.go:1295 +0xe5 fp=0xc000343fe0 sp=0xc000343f50 pc=0x3df045
runtime.goexit()
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/asm_amd64.s:1650 +0x1 fp=0xc000343fe8 sp=0xc000343fe0 pc=0x42b241
created by runtime.gcBgMarkStartWorkers in goroutine 1
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/mgc.go:1219 +0x1c

goroutine 35 [GC worker (idle)]:
runtime.gopark(0x0?, 0x0?, 0x0?, 0x0?, 0x0?)
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/proc.go:398 +0xce fp=0xc0000bbf50 sp=0xc0000bbf30 pc=0x3fdc4e
runtime.gcBgMarkWorker()
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/mgc.go:1295 +0xe5 fp=0xc0000bbfe0 sp=0xc0000bbf50 pc=0x3df045
runtime.goexit()
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/asm_amd64.s:1650 +0x1 fp=0xc0000bbfe8 sp=0xc0000bbfe0 pc=0x42b241
created by runtime.gcBgMarkStartWorkers in goroutine 1
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/mgc.go:1219 +0x1c

goroutine 22 [GC worker (idle)]:
runtime.gopark(0x0?, 0x0?, 0x0?, 0x0?, 0x0?)
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/proc.go:398 +0xce fp=0xc0000c7f50 sp=0xc0000c7f30 pc=0x3fdc4e
runtime.gcBgMarkWorker()
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/mgc.go:1295 +0xe5 fp=0xc0000c7fe0 sp=0xc0000c7f50 pc=0x3df045
runtime.goexit()
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/asm_amd64.s:1650 +0x1 fp=0xc0000c7fe8 sp=0xc0000c7fe0 pc=0x42b241
created by runtime.gcBgMarkStartWorkers in goroutine 1
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/mgc.go:1219 +0x1c

goroutine 23 [GC worker (idle)]:
runtime.gopark(0x0?, 0x0?, 0x0?, 0x0?, 0x0?)
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/proc.go:398 +0xce fp=0xc0000c9f50 sp=0xc0000c9f30 pc=0x3fdc4e
runtime.gcBgMarkWorker()
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/mgc.go:1295 +0xe5 fp=0xc0000c9fe0 sp=0xc0000c9f50 pc=0x3df045
runtime.goexit()
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/asm_amd64.s:1650 +0x1 fp=0xc0000c9fe8 sp=0xc0000c9fe0 pc=0x42b241
created by runtime.gcBgMarkStartWorkers in goroutine 1
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/mgc.go:1219 +0x1c

goroutine 36 [GC worker (idle)]:
runtime.gopark(0x0?, 0x0?, 0x0?, 0x0?, 0x0?)
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/proc.go:398 +0xce fp=0xc0000c3f50 sp=0xc0000c3f30 pc=0x3fdc4e
runtime.gcBgMarkWorker()
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/mgc.go:1295 +0xe5 fp=0xc0000c3fe0 sp=0xc0000c3f50 pc=0x3df045
runtime.goexit()
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/asm_amd64.s:1650 +0x1 fp=0xc0000c3fe8 sp=0xc0000c3fe0 pc=0x42b241
created by runtime.gcBgMarkStartWorkers in goroutine 1
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/mgc.go:1219 +0x1c

goroutine 10 [GC worker (idle)]:
runtime.gopark(0xfa21c0?, 0x1?, 0x30?, 0xaf?, 0x0?)
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/proc.go:398 +0xce fp=0xc000345f50 sp=0xc000345f30 pc=0x3fdc4e
runtime.gcBgMarkWorker()
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/mgc.go:1295 +0xe5 fp=0xc000345fe0 sp=0xc000345f50 pc=0x3df045
runtime.goexit()
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/asm_amd64.s:1650 +0x1 fp=0xc000345fe8 sp=0xc000345fe0 pc=0x42b241
created by runtime.gcBgMarkStartWorkers in goroutine 1
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/mgc.go:1219 +0x1c

goroutine 11 [GC worker (idle)]:
runtime.gopark(0xfa21c0?, 0x1?, 0x0?, 0x0?, 0x0?)
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/proc.go:398 +0xce fp=0xc00034ff50 sp=0xc00034ff30 pc=0x3fdc4e
runtime.gcBgMarkWorker()
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/mgc.go:1295 +0xe5 fp=0xc00034ffe0 sp=0xc00034ff50 pc=0x3df045
runtime.goexit()
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/asm_amd64.s:1650 +0x1 fp=0xc00034ffe8 sp=0xc00034ffe0 pc=0x42b241
created by runtime.gcBgMarkStartWorkers in goroutine 1
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/mgc.go:1219 +0x1c

goroutine 12 [GC worker (idle)]:
runtime.gopark(0xafd199508f0?, 0x1?, 0x58?, 0xfe?, 0x0?)
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/proc.go:398 +0xce fp=0xc000351f50 sp=0xc000351f30 pc=0x3fdc4e
runtime.gcBgMarkWorker()
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/mgc.go:1295 +0xe5 fp=0xc000351fe0 sp=0xc000351f50 pc=0x3df045
runtime.goexit()
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/asm_amd64.s:1650 +0x1 fp=0xc000351fe8 sp=0xc000351fe0 pc=0x42b241
created by runtime.gcBgMarkStartWorkers in goroutine 1
	C:/hostedtoolcache/windows/go/1.21.5/x64/src/runtime/mgc.go:1219 +0x1c

I've tried running the wsl-helper.exe certificates command from a terminal and the same thing happens. Interestingly, when I build and run the wsl-helper program in the debugger it doesn't crash, but the last certificate from each store is corrupted, e.g.

-----BEGIN CERTIFICATE-----
MIID<snip>gG5
7v7u/u7+7v7u/u7+7v7u/u7+7v7u/u7+7v7u/u7+7v7u/u7+7v7u/u7+7v7u/u7+
7v7u/u7+7v7u/u7+7v7u/u7+7v7u/u7+7v7u/u7+7v7u/u7+7v7u/u7+7v7u/u7+
7v7u/u7+7v7u/u7+7v7u/u7+7v7u/u7+7v7u/u7+7v7u/u7+7v7u/u7+7v7u/u7+
7v7u/u7+7v7u/u7+7v7u/u7+7v7u/u7+7v7u/u7+7v7u/u7+7v4=
-----END CERTIFICATE-----

i.e. the cert looks fine up until a certain point when it becomes corrupt.

those corrupt bytes decode to 0xEE and 0xFE in a repeating pattern.

What's even stranger is that when I added some debugging code to the certificates_window.go file to examine the final cert in each store, the block.Bytes array that's passed to pem.Encode() is seemingly being corrupted during the generation of the base64-encoded data - as in, the array is correct initially, then pem.Encode() is called and after the call the array is then ENTIRELY filled with 0xEE/FE bytes.

Steps to Reproduce

Honestly no idea. Other people at my company do not have this problem. Deleting the cert that ends up corrupted just causes another one to end up corrupted instead.

Result

The above crash.

Expected Behavior

No crash, rancher should start up normally with all the root certs installed

Additional Information

No response

Rancher Desktop Version

1.12.0

Rancher Desktop K8s Version

1.28.5

Which container engine are you using?

moby (docker cli)

What operating system are you using?

Windows

Operating System / Build Version

Windows 11 22H2

What CPU architecture are you using?

x64

Linux only: what package format did you use to install Rancher Desktop?

None

Windows User Only

This happens both with and without a VPN connection. I can't really comment on security software.

@jackmtpt jackmtpt added the kind/bug Something isn't working label Jan 11, 2024
@mook-as
Copy link
Contributor

mook-as commented Jan 11, 2024

Thanks for the very clear bug report! We're tracking this in #6295 which is (at least partly) the same issue, mostly because that was earlier.

Also thanks for the very clear sample — Wikipedia has 0xFEEEFEEE listed as the result of memory that had been HeapFree()ed, which makes sense on the assumption that I'm using memory (for the cert) after it has been freed. I'm going to try to make a copy of that memory and see if I can get that to work…

@jandubois
Copy link
Member

This has been fixed in #6308 and will be included in a 1.12.1 patch release.

@jackmtpt
Copy link
Author

Yeah, freed memory was my assumption too. Thanks for beating me to a fix while I was asleep :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants