diff options
| author | Gabriel Schneider <[email protected]> | 2026-09-20 00:36:50 -0300 |
|---|---|---|
| committer | Gabriel Schneider <[email protected]> | 2026-10-01 00:12:14 -0300 |
| commit | c1990b3e6e196ad41379aa432bf3ccca8a65d9f0 (patch) | |
| tree | d7ad5afe559f7f56464b14c3122242fa3f16399b /docs/v9fs.md | |
| parent | 717afaf3177a2e0925b18ae3445119efe808b129 (diff) | |
| download | pardes-c1990b3e6e196ad41379aa432bf3ccca8a65d9f0.tar.gz pardes-c1990b3e6e196ad41379aa432bf3ccca8a65d9f0.zip | |
Flatten the 9P control tree and move it out of fs.zig
The served tree loses the self/ level: /index /ctl /new /log /screen
/listeners /pane/<n>/... /os, with /src only in -Dembed-sources=true builds
(default off, on for esp32p4). ctl speaks the editor's own language with two
lowercase verbs, look TEXT and exec TEXT, plus acme's addr verbs; the new/
factory directory becomes one clone file; cons is gone (exec Msg); name and
sel are files; stats report real lengths, modes and mtimes; /log streams
pane new/del/rename/save events. The tree code lives in src/ninep/
(tree, pane, ctl, addr, pty, events, screen, sources); fs.zig keeps host
access, mounts, resolution and find/grep. Same engine and transports.
README (fs-help.txt) and docs rewritten; tests updated and extended.
Co-Authored-By: Claude Fable 5.1 <[email protected]>
Diffstat (limited to 'docs/v9fs.md')
| -rw-r--r-- | docs/v9fs.md | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/docs/v9fs.md b/docs/v9fs.md index 51b35a46..6cb4e998 100644 --- a/docs/v9fs.md +++ b/docs/v9fs.md @@ -8,11 +8,11 @@ your configured shell as your normal user, with your account's supplementary groups. The shell receives `PARDES_MOUNT`, the absolute mountpoint: ```sh -ls "$PARDES_MOUNT/self/pane" -cat "$PARDES_MOUNT/self/index" -cat "$PARDES_MOUNT/self/README" -ls -l "$PARDES_MOUNT/self/new" -cat "$PARDES_MOUNT/self/pane/$PARDES_PANE/body" +ls "$PARDES_MOUNT/pane" +cat "$PARDES_MOUNT/index" +cat "$PARDES_MOUNT/README" +cat "$PARDES_MOUNT/pane/$PARDES_PANE/body" +echo 'exec Msg hello' > "$PARDES_MOUNT/ctl" ``` The mount belongs to that pane's subprocess tree. Other panes and the editor @@ -96,7 +96,7 @@ unprivileged and uses `sudo -n`, retaining the calling terminal's authorization. Missing authorization or kernel support fails the test instead of skipping it. It checks mount isolation, privilege dropping, inherited access, directory refresh, body reads and truncation, independent wire updates, addressed edits, -shell redirection to ctl, Exec dispatch, rendered screen JSON, and OS-file reads. +shell redirection to name, Exec dispatch, rendered screen JSON, and OS-file reads. Linux follows `O_TRUNC` with a `Twstat` carrying zero length and an `mtime` hint. Pardes accepts this truncation without storing caller-selected timestamps; |
