Blob


1 - compile with -D_FILE_OFFSET_BITS=64 on linux.
2 related: this is needed only for glibc or musl too?
4 - (possibly related) find out what pread(2) black magic we can do to
5 read stuff on 32 bits
7 - rework the ninepscript so tests are parsed and executed by the _kamid
8 user and not by root.
10 - tweak iounit so it's always lower than the choosen msize
12 - handle message bigger than MAX_IMSGSIZE - IMSG_HEADER_SIZE. One
13 way to do that would be to *not* use asynchroonus imsgs in client.c
14 but synchronous I/O: this way, once a message has been processed,
15 we can just receive the next in the same function (i.e. twrite) and
16 go ahead.
18 - fill user and group name in struct stat. The problem is that, being
19 chrooted, we don't have access to /etc/passwd nor /etc/group. We
20 could use setpassent(3) and setgroupent(3), but if they change in the
21 meantime we can't do anything. Another solution would be to not
22 to chroot(2) and just switch to the targeted user.
24 - find a way to avoid opening directories twice. During a walk
25 we open the directories, but if later we try to open that fid,
26 we end up re-opening the same directory again! It's not easy
27 to avoid because we need to fdopendir(3) and upon closedir it'll
28 close the file descriptor, while the same file descriptor could
29 be shared with other fids (f->dir is a shared read-only resource).