Commits


Merge pull request #8 from stevvooe/err-instead-nil errors: return errors rather than nil


errors: return errors rather than nil Signed-off-by: Stephen J Day <stephen.day@docker.com>


Merge branch 'pinata-filtered'


Merge branch 'pinata-pkg-filtered' into pinata-filtered Signed-off-by: Stephen J Day <stephen.day@docker.com>


implementing p9p fs with v1/pkg/p9p (wip)


implementing p9p fs with v1/pkg/p9p (wip)


fs/p9p/new: various client and server cleanup Signed-off-by: Stephen J Day <stephen.day@docker.com>


v1/pkg/p9p


fs/p9p/new: add version to context Signed-off-by: Stephen J Day <stephen.day@docker.com>


fs/p9p/new: refactor to use interface for channel Signed-off-by: Stephen J Day <stephen.day@docker.com>


fs/p9p/new: stat implementation and correct dir/Rstat encoding Signed-off-by: Stephen J Day <stephen.day@docker.com>


fs/p9p/new: fully working ls with ufs The repl and client session work fully with rminnich/go9p/ufs. The key to this was proper support for directory serialization, which is subtle. The size field for Rread was the incorrect size. Several robustness improvements are also included. Issues with the timeouts and missing error returns have been addressed. Signed-off-by: Stephen J Day <stephen.day@docker.com>


fs/p9p/new: refactor channel framing After a few connection bugs and framing issues, the transport has been refactored into a channel that manages raw message sending. More importantly, this frees up pre-session protocol version negotiation. To support this, the encoder and decoder have been folded into a Codec interface. The encoding support still needs work, but this has made the server and client code much simpler to understand. Signed-off-by: Stephen J Day <stephen.day@docker.com>


fs/p9p/new: ls and cat command now fully working Signed-off-by: Stephen J Day <stephen.day@docker.com>


fs/p9p/new: working client to server communication A rather large commit, this provides the first working version of running the wire protocol over a connection. It is fairly shaky but we can already get portions of the repl emitting and receiving 9p messages. Other additions include the separate of client and transport. We've also made some adjustments to message instantiation. Signed-off-by: Stephen J Day <stephen.day@docker.com>