func (clnt *Clnt) Create(fid *Fid, name string, perm uint32, mode uint8, ext string) error {
	tc := clnt.NewFcall()
	err := p.PackTcreate(tc, fid.Fid, name, perm, mode, ext, clnt.Dotu)
	if err != nil {
		return err
	}
	rc, err := clnt.Rpc(tc)
	if err != nil {
		return err
	}
	fid.Qid = rc.Qid
	fid.Iounit = rc.Iounit
	if fid.Iounit == 0 || fid.Iounit > clnt.Msize-p.IOHDRSZ {
		fid.Iounit = clnt.Msize - p.IOHDRSZ
	}
	fid.Mode = mode
	return nil
}
Creates a file in the directory associated with the fid. Returns nil
if the operation is successful.
package clnt
import (
	"github.com/lionkov/go9p/p"
	"strings"
)
func (clnt *Clnt) Open(fid *Fid, mode uint8) error {
	tc := clnt.NewFcall()
	err := p.PackTopen(tc, fid.Fid, mode)
	if err != nil {
		return err
	}
	rc, err := clnt.Rpc(tc)
	if err != nil {
		return err
	}
	fid.Qid = rc.Qid
	fid.Iounit = rc.Iounit
	if fid.Iounit == 0 || fid.Iounit > clnt.Msize-p.IOHDRSZ {
		fid.Iounit = clnt.Msize - p.IOHDRSZ
	}
	fid.Mode = mode
	return nil
}