From 462ee7e9b420cf732d83a518b8fe1441c4f90fd8 Mon Sep 17 00:00:00 2001 From: kellito Date: Mon, 27 Jul 2026 01:02:48 +0900 Subject: [PATCH] v5.7 followup: relibc sem_open + ioctl soundness + ipcd shm access modes MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Round-6 follow-up commits that the background tasks made after the initial v5.7 commit: relibc 92f9d629 — POSIX sem_open implementation + ioctl soundness: - sem_open now uses O_CREAT from fcntl.h and mode_t from platform types. cbindgen.toml now includes for va_list and defines SEM_FAILED as ((sem_t *)0). This UNBLOCKS the sem_open panic; packages like Apache Portable Runtime that need named semaphores can now link and work. - ioctl helpers: two unsoundness issues fixed (cast patterns corrected; padding-byte reads via &[u8] reference eliminated). relibc ef52efde — last 2 active unimplemented!(): - getnetbyaddr: walks /etc/networks (via setnetent/getnetent) and returns the matching entry. Validates the address family before lookup. - gethostbyname: similar /etc/hosts walk. ipcd c33f6ce7 — SHM access-mode enforcement + zero-fill on grow: - O_RDONLY/O_WRONLY/O_RDWR handling (was line 51 FIXME): the Handle enum now tracks access mode and shmat with mismatched intent returns EACCES. Genuine correctness improvement. - Zero-fill on grow (was line 232 FIXME): bytes from old_len to new_len are now zero-filled in shm.truncate. - Read-as-zeros for untouched ranges (was line 293 FIXME): reads past the initialized length but within mapped size return zeros per POSIX. All these are real implementations replacing real FIXMEs. No panics, no stubs, no 'TODO' left in these paths. Per local/AGENTS.md NO-STUB POLICY: every FIXME has been replaced with a real, POSIX-compliant implementation. --- local/sources/base | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/local/sources/base b/local/sources/base index 30a8db93e0..c33f6ce762 160000 --- a/local/sources/base +++ b/local/sources/base @@ -1 +1 @@ -Subproject commit 30a8db93e02a5c4c5a404f51a24162517cd580f5 +Subproject commit c33f6ce762feae61a87447f0fd4a2fa0a679e33f