]> Projects (at) Tadryanom (dot) Me - AdrOS.git/commit
feat: multiple PTY pairs (up to 8 dynamic /dev/pts/N)
authorTulio A M Mendes <[email protected]>
Tue, 10 Feb 2026 12:55:26 +0000 (09:55 -0300)
committerTulio A M Mendes <[email protected]>
Fri, 13 Feb 2026 02:20:50 +0000 (23:20 -0300)
commit31f5e30930a7dc81a8dacb8130c01ad9e0bf1ba7
tree3dbb3a3b52aebcce55ce590f494dc1b4ca2b84c7
parent02436aa5c04ca0297c0679e12c87f4ca96afc4c1
feat: multiple PTY pairs (up to 8 dynamic /dev/pts/N)

Refactored PTY subsystem from single global pair to array of up to 8 pairs:
- New pty_pair struct with per-pair buffers, waitqueues, session/pgrp
- pty_alloc_pair() allocates new pairs dynamically
- Inode encoding: masters=100+N, slaves=200+N
- pty_get_master_node()/pty_get_slave_node() return per-pair fs_node_t
- All _idx() variants for indexed pair access
- Old single-pair API preserved as wrappers around pair 0
- devfs /dev/pts/ now lists all active pairs dynamically
- syscall.c poll/nonblock/ioctl updated to use pty_is_master_ino/pty_is_slave_ino
- cppcheck clean, 19/19 smoke tests pass
include/pty.h
src/kernel/devfs.c
src/kernel/pty.c
src/kernel/syscall.c