func (c *ClientConn) process(fc *plan9.Fcall, out chan *plan9.Fcall) { println(">>>\t", fc.String()) switch fc.Type { case plan9.Tversion: fc = c.version(fc) case plan9.Tattach: fc = c.attach(fc) case plan9.Twalk: fc = c.walk(fc) case plan9.Topen: fc = c.open(fc) case plan9.Tread: fc = c.read(fc) case plan9.Tclunk: fc = c.clunk(fc) case plan9.Tcreate: fc = c.create(fc) case plan9.Twrite: fc = c.write(fc) case plan9.Tauth: fc = noauth(fc) default: println("!!!\t", fc.String()) fc = nil } if fc != nil { println("<<<\t", fc.String()) } out <- fc }