v5.7 followup: relibc sem_open + ioctl soundness + ipcd shm access modes
Round-6 follow-up commits that the background tasks made after the initial v5.7 commit: relibc92f9d629— 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 <bits/valist.h> 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). relibcef52efde— 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. ipcdc33f6ce7— 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.
This commit is contained in:
+1
-1
Submodule local/sources/base updated: 30a8db93e0...c33f6ce762
Reference in New Issue
Block a user