mirror of
https://github.com/boykopovar/AnyPS5.git
synced 2026-11-05 13:20:11 +00:00
A guest kqueue and a guest /dev/urandom are /dev/null placeholders with their behaviour in libkernel's tables, and a guest directory descriptor keeps its reading state there too. sendmsg sent the placeholder, and the receiver got a descriptor that failed kevent or read as empty. FreeBSD's unp_internalize returns EOPNOTSUPP for a kqueue (no DFLAG_PASSABLE), so a kqueue now gets that; a random device or a directory throws. A zero-byte sendmsg carrying descriptors on a stream socket returned 0 and lost them, as Linux sends no record without data. It throws now. FreeBSD sends the control data alone there. guest_socket_rights checks the kqueue refusal and that the next send on the pair arrives without control data. Co-Authored-By: Claude Opus 5.5 <[email protected]>