]> Projects (at) Tadryanom (dot) Me - AdrOS.git/commit
feat: VMIN/VTIME termios fields for non-canonical TTY reads
authorTulio A M Mendes <[email protected]>
Tue, 10 Feb 2026 13:23:13 +0000 (10:23 -0300)
committerTulio A M Mendes <[email protected]>
Fri, 13 Feb 2026 02:20:50 +0000 (23:20 -0300)
commitcd74a21a79eb784e884831ea11ad1a32c84a078c
treef303abec8fc1bc395fe674bbb45c9242aaf90be0
parent31f5e30930a7dc81a8dacb8130c01ad9e0bf1ba7
feat: VMIN/VTIME termios fields for non-canonical TTY reads

- Added c_cc[NCCS] array to struct termios with VMIN/VTIME indices
- TCGETS/TCSETS now get/set c_cc values
- tty_read_kbuf implements full POSIX non-canonical semantics:
  VMIN=0,VTIME=0: poll (return immediately)
  VMIN>0,VTIME=0: block until VMIN chars available
  VMIN=0,VTIME>0: timeout read (tenths of second)
  VMIN>0,VTIME>0: block with inter-char timeout
- tty_read refactored to delegate to tty_read_kbuf (no duplication)
- Default: VMIN=1, VTIME=0 (standard blocking single-char read)
- cppcheck clean, 19/19 smoke tests pass
include/tty.h
src/kernel/tty.c