diff options
Diffstat (limited to 'docs/fs.md')
| -rw-r--r-- | docs/fs.md | 10 |
1 files changed, 6 insertions, 4 deletions
@@ -40,8 +40,9 @@ IPv4/IPv6 addresses, not DNS names. Listener port zero chooses a free port; All connections have session access, including `os`. TCP is unencrypted. QUIC uses an ephemeral TLS identity without peer verification or login. It carries 9P2000 on one bidirectional stream with ALPN `pardes-9p`. -The four application connection slots are shared across transports; -OpenSSL's internal buffers are separate, dynamically allocated memory. +Unix and TCP connections share four slots served by cloud9's `std.Io` +runner; QUIC has four of its own on the editor's poll loop. OpenSSL's +internal buffers are separate, dynamically allocated memory. [Plan9port's client](https://9fans.github.io/plan9port/man/man1/9p.html) can drive Unix or TCP without a kernel mount, and `9ns` mounts the tree in a @@ -141,8 +142,9 @@ and the editor's reply payload over cloud9's backend contract), `pane.zig` (pane files), `ctl.zig`, `addr.zig`, `pty.zig`, `events.zig` (event and log streams), `screen.zig` and `sources.zig`. The protocol engine is cloud9's `fs.Server`, configured in `src/9p.zig` (the editor's and the board's -capacities); the transports are `src/9p_io.zig`; `src/fs.zig` keeps host -access, mounts, resolution, find and grep. +capacities); the transports are `src/9p_io.zig` (cloud9's `serve.Runner` +for Unix and TCP, a poll loop for QUIC, and the 9P client for mounts); +`src/fs.zig` keeps host access, mounts, resolution, find and grep. `zig build fs-test` drives real sessions using the independent Python client in `test/ninep.py`; `zig build fs-discovery-test` checks that browsing creates |
