Fixed on main as 4a1e4b2 (branch securelisten-337). Not released or rolled. Census ruling: census-ruling-securelisten-337 (Paul, 2026-10-21).
What changed on Linux:
SecureUnixListenno longer touches the process umask. It fchmods the socket to 0600 before bind, so the kernel creates the file owner-only at its real path.- It binds in place, so
unixdial's bound-path check holds. - It fails closed if the file has any group or other bits.
- It refuses empty and abstract (
@) paths. - It returns the
*net.UnixListenerwith unlink on close.
Other unix systems keep the old code. Two Astra rounds; the last found nothing at P1 or P2. The regression test fails 5 of 5 on the old code.
Follow-ups:
- Ship it in the next release and roll.
- The roughly 125 host and activator tests kept serial because of this umask can now be made parallel (#291).