mirror of
https://github.com/boykopovar/AnyPS5.git
synced 2026-10-23 00:53:02 -05:00
A title's descriptors are taken as never being terminals: a file or pipe gets ENOTTY with the termios untouched, a socket gets what its protocol answers a termios ioctl on FreeBSD (EADDRNOTAVAIL for AF_INET, EOPNOTSUPP otherwise), and a closed or invalid descriptor EBADF. tcsetattr gives EINVAL for an action other than TCSANOW, TCSADRAIN or TCSAFLUSH, with or without TCSASOFT, before anything else, and EFAULT for a null termios before the descriptor is checked; with TCSASOFT a null termios throws, where FreeBSD's libc faults copying it. What the console gives a title as descriptors 0 to 2 is unknown, as recorded in TechnicalDebt. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>