]>
Projects (at) Tadryanom (dot) Me - AdrOS.git/commit
feat: Phase 1 — critical ulibc gaps + uname syscall + new smoke test
Kernel:
- Add SYSCALL_UNAME (136) with struct utsname (sysname=AdrOS, machine=i686)
ulibc headers:
- signal.h: Add sigset_t typedef, sigemptyset/sigfillset/sigaddset/sigdelset/
sigismember inline functions, SIG_BLOCK/SIG_UNBLOCK/SIG_SETMASK constants
- poll.h: New header with struct pollfd, POLLIN/POLLOUT/POLLERR/POLLHUP/POLLNVAL
- sys/utsname.h: New header with struct utsname + uname() declaration
- dirent.h: Add DIR typedef, opendir/readdir/closedir/rewinddir declarations
- unistd.h: Add sysconf/pathconf/fpathconf + _SC_*/_PC_* constants,
gethostname, ttyname, pipe2 declarations
- stdio.h: Add clearerr, ungetc, getc, putc, getline, getdelim, popen,
pclose, tmpfile, tmpnam declarations + ssize_t typedef
- syscall.h: Add SYS_UNAME (136)
ulibc implementations:
- poll.c: poll() syscall wrapper
- utsname.c: uname() syscall wrapper
- dirent.c: opendir/readdir/closedir/rewinddir wrapping getdents syscall
- sysconf.c: sysconf/pathconf/fpathconf returning compile-time constants
- stdio.c: clearerr, ungetc, getc, putc, getdelim, getline, popen/pclose,
tmpfile, tmpnam implementations
Tests:
- fulltest.c: Add uname syscall test (G1) verifying sysname=AdrOS, machine=i686
- smoke_test.exp: Add uname test pattern (101 total tests)
Tests: 101/101 smoke, 64/64 host utils, cppcheck clean
17 files changed: