On Thu, 4 Jun 2009 17:23:08 -0700 Russ Cox <[email protected]> wrote: > On Thu, Jun 4, 2009 at 4:58 PM, Ethan Grammatikidis <[email protected]> > wrote: > > I run a plan 9 cpu server in Qemu and use drawterm to connect from the > > Linux host. > > I thought the /mnt/term mechanism would be very convenient for exchanging > > files > > between host & guest, but the guest sees all user/group names as > > unknown/unknown, preventing writing. > > That's surprising. Drawterm isn't going around enforcing > permission bits: if it can write, it writes. What it shows > you in ls is what it gets from stat, but it doesn't rely on > that to make decisions about what you can open. It just > tries to open it. > > http://cvs.pdos.csail.mit.edu/cvs/drawterm/kern/devfs-posix.c?rev=1.5;content-type=text%2Fplain
Looks like a prime candidate for modification. ;) The code unconditionally sets d.uid = "unknown" immediately after stat(path, &stbuf) calls. stbuf.st_uid could be compared with the un*x UID drawterm is running as, & if matching d.uid is filled with the logged-in plan 9 username instead of "unknown". Similar for stbuf.st_gid and g.gid. I could write a patch when I'm more awake. Rather a lot to look up when I'm falling asleep. :) -- Ethan Grammatikidis The lyf so short, the craft so long to lerne. -- Chaucer
