예제 #1
0
파일: ufs.go 프로젝트: rjkroege/go9p
func (*Ufs) Stat(req *srv.Req) {
	fid := req.Fid.Aux.(*Fid)
	if err := fid.stat(); err != nil {
		req.RespondError(err)
		return
	}

	st, err := dir2Dir(fid.path, fid.st, req.Conn.Dotu, req.Conn.Srv.Upool)
	if err != nil {
		req.RespondError(err)
		return
	}
	req.RespondRstat(st)
}
예제 #2
0
파일: vufs.go 프로젝트: postfix/vufs
func (*VuFs) Stat(req *srv.Req) {
	fid := req.Fid.Aux.(*Fid)
	st, err := os.Stat(fid.path)

	if err != nil {
		req.RespondError(toError(err))
		return
	}

	dir, err := dir2Dir(fid.path, st, req.Conn.Srv.Upool)
	if err != nil {
		req.RespondError(err)
		return
	}
	req.RespondRstat(dir)
}