Commit Graph

5 Commits

Author SHA1 Message Date
Levi Neely 09e4f0f678 fs: centralized permission registry; FUSE mutating operations 2026-05-21 11:50:34 +02:00
Levi Neely b381fa4b13 ollie-9p-mount: pass through actual 9P permissions
p9File.Getattr was hardcoding 0666 for all files, breaking
permission visibility in per-session mounts. Use the actual
mode from the 9P stat response instead.
2026-05-20 11:08:48 +02:00
Levi Neely c366cee82c fix: return EOF instead of EIO on read past end of file 2026-05-19 15:52:25 +02:00
Levi Neely 7368b4cfe4 fix: mount proxy uses OLLIE_UNAME so checkPerm identifies session owner 2026-05-19 15:33:27 +02:00
Levi Neely f9c9bc8969 9p: uname-based self-prompt rejection + ollie-9p-mount
Store Uname from Tattach on each connection. Reject writes to
s/{id}/prompt when the connection's uname matches the target session
(self-prompt). Cross-agent prompting remains allowed.

Add ollie-9p-mount: a FUSE-to-9P proxy that attaches with a custom
uname derived from $OLLIE_SESSION_ID. Each session gets a transparent
mount — tools use ordinary file I/O and the identity is carried by the
underlying 9P connection.

Also adds a group registry (AddGroup/RemoveGroup/InGroup) on the server
for future access control use cases.
2026-05-19 14:10:22 +02:00