keybase / keybase/keybase-issues
device list crash
- Dominant language
- No language data
- Stars
- 899
- Forks
- 40
- PR merge metrics
- No merged PRs in 30d
Description
Upon successfully logging into a new device (i.e. adding new device), running `keybase device list` crashes with a runtime error. Subsequent call to `keybase device list` succeeds.
OS: Windows 10
keybase version 1.0.11-201602111011+b5a91f4
```
C:\Program Files (x86)\Keybase>keybase device list
panic: runtime error: invalid memory address or nil pointer dereference
[signal 0xc0000005 code=0x0 addr=0x0 pc=0xa9e673]
goroutine 1 [running]:
github.com/keybase/client/go/vendor/github.com/natefinch/npipe.(*PipeConn).Close(0x0, 0x0, 0x0)
c:/work/src/github.com/keybase/client/go/vendor/github.com/natefinch/npipe/npipe_windows.go:446 +0x23
github.com/keybase/client/go/client.FixVersionClash.func1(0x13c31acc, 0x13ca2000, 0x13c31c98)
c:/work/src/github.com/keybase/client/go/client/versionfix.go:60 +0x39
github.com/keybase/client/go/client.FixVersionClash(0x13ca2000, 0x2344ec0, 0x13bc4de0, 0x2345268, 0x13cf4e10)
c:/work/src/github.com/keybase/client/go/client/versionfix.go:71 +0x16f
main.configureProcesses(0x13ca2000, 0x13bc4de0, 0x151b100, 0x0, 0x0)
c:/work/src/github.com/keybase/client/go/keybase/main.go:196 +0x434
main.mainInner(0x13ca2000, 0x0, 0x0)
c:/work/src/github.com/keybase/client/go/keybase/main.go:114 +0x89e
main.main()
c:/work/src/github.com/keybase/client/go/keybase/main.go:45 +0x4c
goroutine 5 [syscall]:
os/signal.loop()
C:/Go/src/os/signal/signal_unix.go:22 +0x1a
created by os/signal.init.1
C:/Go/src/os/signal/signal_unix.go:28 +0x36
goroutine 7 [select]:
github.com/keybase/client/go/libkb.(*LoginState).requests(0x13cc06a0)
c:/work/src/github.com/keybase/client/go/libkb/login_state.go:827 +0x696
created by github.com/keybase/client/go/libkb.NewLoginState
c:/work/src/github.com/keybase/client/go/libkb/login_state.go:113 +0x22b
goroutine 8 [chan receive]:
main.HandleSignals()
c:/work/src/github.com/keybase/client/go/keybase/main.go:272 +0x196
created by main.main
c:/work/src/github.com/keybase/client/go/keybase/main.go:44 +0x40
goroutine 9 [select]:
github.com/keybase/client/go/vendor/stathat.com/c/ramcache.(*Ramcache).cleanup(0x13bc9ac0)
c:/work/src/github.com/keybase/client/go/vendor/stathat.com/c/ramcache/ramcache.go:164 +0x116
created by github.com/keybase/client/go/vendor/stathat.com/c/ramcache.New
c:/work/src/github.com/keybase/client/go/vendor/stathat.com/c/ramcache/ramcache.go:44 +0x149
goroutine 10 [select]:
github.com/keybase/client/go/vendor/stathat.com/c/ramcache.(*Ramcache).cleanup(0x13bc9b80)
c:/work/src/github.com/keybase/client/go/vendor/stathat.com/c/ramcache/ramcache.go:164 +0x116
created by github.com/keybase/client/go/vendor/stathat.com/c/ramcache.New
c:/work/src/github.com/keybase/client/go/vendor/stathat.com/c/ramcache/ramcache.go:44 +0x149
goroutine 11 [select]:
github.com/keybase/client/go/vendor/stathat.com/c/ramcache.(*Ramcache).cleanup(0x13bc9c40)
c:/work/src/github.com/keybase/client/go/vendor/stathat.com/c/ramcache/ramcache.go:164 +0x116
created by github.com/keybase/client/go/vendor/stathat.com/c/ramcache.New
c:/work/src/github.com/keybase/client/go/vendor/stathat.com/c/ramcache/ramcache.go:44 +0x149
goroutine 12 [select]:
github.com/keybase/client/go/libkb.(*LinkCache).handle(0x13bc58f0)
c:/work/src/github.com/keybase/client/go/libkb/link_cache.go:136 +0xf1a
created by github.com/keybase/client/go/libkb.NewLinkCache
c:/work/src/github.com/keybase/client/go/libkb/link_cache.go:49 +0x2d4
goroutine 13 [select]:
github.com/keybase/client/go/libkb.(*LinkCache).periodic(0x13bc58f0)
c:/work/src/github.com/keybase/client/go/libkb/link_cache.go:204 +0xf5
created by github.com/keybase/client/go/libkb.NewLinkCache
c:/work/src/github.com/keybase/client/go/libkb/link_cache.go:50 +0x2f1
goroutine 14 [select]:
github.com/keybase/client/go/service.(*logFwd).process(0x13ce32e0)
c:/work/src/github.com/keybase/client/go/service/log_fwd.go:63 +0x364
created by github.com/keybase/client/go/service.newLogFwd
c:/work/src/github.com/keybase/client/go/service/log_fwd.go:40 +0x198
```
Contributor guide
No contributing guide indexed for this repository
Research direction
Reproduce the Windows 10 sequence: add a new device, then run `keybase device list`. Start by reading `go/client/versionfix.go` and the referenced `npipe_windows.go` close path, with `go/keybase/main.go` showing the startup entry point. Done means the first device-list call no longer panics and the command still succeeds on the subsequent call.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go
- Domain
- cli
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100