package main import ( "os" "path/filepath" "testing" ) func TestListenRefusesRelativeAndNonSocketPaths(t *testing.T) { if _, err := listen("relative.sock"); err == nil { t.Fatal("listen accepted a relative path") } path := filepath.Join(t.TempDir(), "time.sock") if err := os.WriteFile(path, []byte("preserve"), 0o600); err != nil { t.Fatal(err) } if _, err := listen(path); err == nil { t.Fatal("listen replaced a non-socket path") } content, err := os.ReadFile(path) if err != nil || string(content) != "preserve" { t.Fatalf("protected path changed: %q, %v", content, err) } }