As it often happens to me, a few minutes after hitting send, I am enlightened and embarassed. :-) I had a bit of tunnel vision there, and didn't think of looking at another 9P trace. When I run "9p ls foo/bar" I get the below trace, which answers most of my questions.
Tread tag 0 fid 1 offset 0 count 8168 Rread tag 0 count 8109 Tread tag 0 fid 1 offset 8109 count 8168 Rread tag 0 count 5410 Tread tag 0 fid 1 offset 13519 count 8168 Rread tag 0 count 0 I took a quick look at sys/src/cmd/cwfs/9p2.c and I think it shows the server should silently return 0 bytes and no errors, even if the 0-byte return is due to the read buffer not being large enough for the next dir entry. The only question that still stands is the last in my original post: What happens and what should happen when a dir entry is larger than msize-24? Possibly written from a connection with a large msize, and to be read from a connection with a smaller msize? Thanks, Nicola ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/T42be63e964005519-Md34dba086f695e0bf63be25f Delivery options: https://9fans.topicbox.com/groups/9fans/subscription