bastion 0.60.0
ci / personal-data (push) Successful in 4s
ci / test (push) Successful in 3m36s
ci / fuzz (push) Successful in 3m35s

This commit is contained in:
Privatae
2026-11-02 00:10:58 +00:00
parent 4a5c310482
commit 4f8285ef18
100 changed files with 11537 additions and 840 deletions
+27
View File
@@ -0,0 +1,27 @@
//go:build linux
package main
import (
"net"
"golang.org/x/sys/unix"
)
func askPeerPID(c net.Conn) int {
uc, ok := c.(*net.UnixConn)
if !ok {
return 0
}
raw, err := uc.SyscallConn()
if err != nil {
return 0
}
pid := 0
_ = raw.Control(func(fd uintptr) {
if cred, err := unix.GetsockoptUcred(int(fd), unix.SOL_SOCKET, unix.SO_PEERCRED); err == nil {
pid = int(cred.Pid)
}
})
return pid
}