TCP doesn't preserve message boundaries.

The pre-9P2000 kernels relied on having a transport
protocol that preserved message boundaries in order
to work one 9P packet at a time with ordinary read calls.
You could work around it by pushing an "fcall" stream module
to reinsert the boundaries on TCP, but it was extra hassle.

In the 9P2000 rewrite, we introduced a read9pmsg function
to the C library and fixed the kernel to do the same, so
that the protocol and its implementations would not
depend on the underlying transport for message boundaries.

So it doesn't matter anymore.  The fix was in the 9P
implementations, not IPv6.

Russ

Reply via email to