charm icon indicating copy to clipboard operation
charm copied to clipboard

Serving on IPv6 addresses?

Open hatkidchan opened this issue 2 years ago • 1 comments

I want to run Charm via Yggdrasil network (which uses IPv6 addresses), but when I try to use CHARM_HOST=[201:XXXX::XXXX:XXXX], it crashes:

> charm

   Charm

  ⣻  Authenticating...
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x20 pc=0x55d9f267c58f]

goroutine 10 [running]:
golang.org/x/crypto/ssh.(*connection).clientAuthenticate(0xc000232200, 0xc000140000)
        golang.org/x/[email protected]/ssh/client_auth.go:93 +0x64f
golang.org/x/crypto/ssh.(*connection).clientHandshake(0xc000232200, {0xc0005e00c0, 0x25}, 0xc000140000)
        golang.org/x/[email protected]/ssh/client.go:113 +0x29f
golang.org/x/crypto/ssh.NewClientConn({0x55d9f2fabc00, 0xc000114008}, {0xc0005e00c0, 0x25}, 0xc00023aea0)
        golang.org/x/[email protected]/ssh/client.go:83 +0x131
golang.org/x/crypto/ssh.Dial({0x55d9f2c98692?, 0x5?}, {0xc0005e00c0, 0x25}, 0xc00023aea0)
        golang.org/x/[email protected]/ssh/client.go:181 +0x59
github.com/charmbracelet/charm/client.(*Client).sshSession(0xc0005ccc40)
        github.com/charmbracelet/charm/client/client.go:274 +0xb4
github.com/charmbracelet/charm/client.(*Client).ID(0x1?)
        github.com/charmbracelet/charm/client/client.go:145 +0x3a
github.com/charmbracelet/charm/client.(*Client).Bio(0x0?)
        github.com/charmbracelet/charm/client/client.go:253 +0x46
github.com/charmbracelet/charm/ui/info.GetBio.func1()
        github.com/charmbracelet/charm/ui/info/info.go:94 +0x1d
github.com/charmbracelet/bubbletea.(*Program).StartReturningModel.func6.1()
        github.com/charmbracelet/[email protected]/tea.go:470 +0x33
created by github.com/charmbracelet/bubbletea.(*Program).StartReturningModel.func6
        github.com/charmbracelet/[email protected]/tea.go:468 +0x14d

When I try to use IPv6 address without square brackets, it just says Uh oh, there’s been an error: dial tcp: address 201:XXXX::XXXX:XXXX: too many colons in address

Yes, these ports are exposed:

> curl http://$CHARM_HOST:35354/; echo
{"message":"JWT is missing."}

> curl http://$CHARM_HOST:35356/; echo
We live!

> # ssh also works but when I remove brackets

hatkidchan avatar Oct 09 '22 07:10 hatkidchan

bump, still happens

hatkidchan avatar Dec 01 '22 09:12 hatkidchan