local/docs: add DEF-P0-11 option level collision fix to §15.1

Three-touchpoint fix for the option level collision (option 4 reads
as TCP_KEEPIDLE at SOL_SOCKET vs IP_TOS at IPPROTO_IP):

1. relibc/src/platform/redox/socket.rs: setsockopt/getsockopt
   wire format changed from [SocketCall, option] to
   [SocketCall, level, option]. The stale 'TODO convert back to
   match when we support more levels' comment removed.

2. base/netstack/src/scheme/socket.rs: SocketT::set_sock_opt and
   get_sock_opt now take (level, name) separately. The scheme dispatch
   reads metadata[1] as level and metadata[2] as option.

3. base/netstack/src/scheme/{tcp,udp}.rs: TCP and UDP SocketT impls
   updated to the new (level, name) signature.
This commit is contained in:
2026-07-27 18:04:16 +09:00
parent 689b9a9e5a
commit 0c9758886d
@@ -1023,6 +1023,7 @@ incrementally; this is a rolling changelog.
| **CRITICAL F003** | **scheme File ownership redundant cast fix** | `submodule/base e3f87fa3` → parent `2356417820` | `local/sources/base/netstack/src/scheme/mod.rs` (2 sites) |
| **HIGH DEF-P0-7 (relibc)** | **MSG_NOSIGNAL: implement sigprocmask SIGPIPE blocking** | `submodule/relibc ccd379c6` → parent `f7f27a91f3` | `local/sources/relibc/src/platform/redox/socket.rs` (sendmsg + sendto) |
| **libredox API bug** | **Fd::ftruncate/futimens take &self, not self** | `submodule/libredox 5bb745e` → parent `cc37a2c08a` | `local/sources/libredox/src/lib.rs` |
| **HIGH DEF-P0-11 (option collision)** | **relibc passes level + netstack SocketT takes (level, name)** | `submodule/relibc 06bd61d0` + `submodule/base 181eb63d` → parent `689b9a9e5a` | `local/sources/relibc/src/platform/redox/socket.rs` (setsockopt/getsockopt wire format) + `local/sources/base/netstack/src/scheme/{socket,tcp,udp}.rs` (SocketT trait + impls) |
| **STALE TCP SendMsg TODO** | Removed (netstack does handle SocketCall::SendMsg at `local/sources/base/netstack/src/scheme/socket.rs:519-533`) | (same relibc commit) | `local/sources/relibc/src/platform/redox/socket.rs` (sendto) |
| **F21 (dnsd wiring)** | **Wire redbear-dnsd into redbear-mini** | `6b105c7cee` | `config/redbear-mini.toml` ([packages] + [init] 11_dnsd.service) |
| **ghost-recipe docs** | **netd/audiodevd/usbd WIP per AGENTS.md** | `6b105c7cee` | `local/recipes/system/{netd,audiodevd,usbd}/recipe.toml` |