]> Projects (at) Tadryanom (dot) Me - AdrOS.git/commit
feat: VKILL line kill, c_iflag ICRNL/IGNCR/INLCR, TCSETSW/TCSETSF
authorTulio A M Mendes <[email protected]>
Fri, 13 Feb 2026 21:36:11 +0000 (18:36 -0300)
committerTulio A M Mendes <[email protected]>
Fri, 13 Feb 2026 21:36:11 +0000 (18:36 -0300)
commitc1d9f9ff8d74f8817658685a07f111fa0735e359
tree4e9f4bd6ea2f6098a5d3ba008473a0fcabf93868
parentdd335b3b7e0c170688cafe0ded6dc66dd4a525cf
feat: VKILL line kill, c_iflag ICRNL/IGNCR/INLCR, TCSETSW/TCSETSF

- Add VKILL (Ctrl-U) handling in canonical mode: erases entire
  line buffer with visual backspace feedback
- Add c_iflag bits: ICRNL (default on), IGNCR, INLCR
- Add tty_iflag state variable, default ICRNL enabled
- c_iflag input translation runs before signal/canonical processing
- Replace hardcoded CR→NL conversion with c_iflag-based translation
- TCGETS now returns c_iflag; TCSETS now applies c_iflag mask
- Add TCSETSW (0x5403) and TCSETSF (0x5404) ioctl commands
  (treated same as TCSETS — no output queue to drain/flush)

20/20 smoke tests pass.
include/tty.h
src/kernel/tty.c