-
Notifications
You must be signed in to change notification settings - Fork 133
Open
Labels
Description
Describe the bug
Importing github.com/awnumar/memguard causes a panic when run in a systemd-nspawn container.
To Reproduce
go.mod:
module test
go 1.19
require github.com/awnumar/memguard v0.22.3main.go:
package main
import _ "github.com/awnumar/memguard"
func main() {}Run:
go mod tidy
go run .Expected behaviour
The command should complete with no panic.
Screenshots
$ go run .
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x0 pc=0x49af1f]
goroutine 1 [running]:
github.com/awnumar/memguard/core.Purge.func1(0xc0000aea60)
/root/go/pkg/mod/github.com/awnumar/memguard@v0.22.3/core/exit.go:23 +0x3f
github.com/awnumar/memguard/core.Purge()
/root/go/pkg/mod/github.com/awnumar/memguard@v0.22.3/core/exit.go:51 +0x25
github.com/awnumar/memguard/core.Panic({0x4a69c0, 0xc000014370})
/root/go/pkg/mod/github.com/awnumar/memguard@v0.22.3/core/exit.go:85 +0x25
github.com/awnumar/memguard/core.NewBuffer(0x20)
/root/go/pkg/mod/github.com/awnumar/memguard@v0.22.3/core/buffer.go:73 +0x2d5
github.com/awnumar/memguard/core.NewCoffer()
/root/go/pkg/mod/github.com/awnumar/memguard@v0.22.3/core/coffer.go:30 +0x34
github.com/awnumar/memguard/core.init.0()
/root/go/pkg/mod/github.com/awnumar/memguard@v0.22.3/core/enclave.go:15 +0x2e
exit status 2
System (please complete the following information):
- OS and Kernel Versions: arch
- Memguard Version: v0.22.3
- Go Version: go1.19.4 linux/amd64
Additional context
We recently started using this project in telegraf in our new secret store implementation. A user reported this issue in influxdata/telegraf#12403 and I was able to reproduce it outside of telegraf with the above steps.