]> 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)
commit2b248afd44d0779fa7df035aeae77d4166e4d739
treed646013ea28b2a7ff09c1a477178f9a260da37d6
parent991ddb491bfa4b4a63a74aecd08f8672332933b2
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