8 nfs3StatusStr(Nfs3Status x)
14 return "Nfs3ErrNotOwner";
16 return "Nfs3ErrNoEnt";
18 return "Nfs3ErrNoMem";
24 return "Nfs3ErrAcces";
26 return "Nfs3ErrExist";
30 return "Nfs3ErrNoDev";
32 return "Nfs3ErrNotDir";
34 return "Nfs3ErrIsDir";
36 return "Nfs3ErrInval";
40 return "Nfs3ErrNoSpc";
44 return "Nfs3ErrMLink";
45 case Nfs3ErrNameTooLong:
46 return "Nfs3ErrNameTooLong";
48 return "Nfs3ErrNotEmpty";
50 return "Nfs3ErrDQuot";
52 return "Nfs3ErrStale";
54 return "Nfs3ErrRemote";
55 case Nfs3ErrBadHandle:
56 return "Nfs3ErrBadHandle";
58 return "Nfs3ErrNotSync";
59 case Nfs3ErrBadCookie:
60 return "Nfs3ErrBadCookie";
62 return "Nfs3ErrNotSupp";
64 return "Nfs3ErrTooSmall";
65 case Nfs3ErrServerFault:
66 return "Nfs3ErrServerFault";
68 return "Nfs3ErrBadType";
70 return "Nfs3ErrJukebox";
71 case Nfs3ErrFprintNotFound:
72 return "Nfs3ErrFprintNotFound";
74 return "Nfs3ErrAborted";
84 Nfs3ErrNotOwner, "not owner",
85 Nfs3ErrNoEnt, "directory entry not found",
86 Nfs3ErrIo, "i/o error",
87 Nfs3ErrNxio, "no such device",
88 Nfs3ErrNoMem, "out of memory",
89 Nfs3ErrAcces, "access denied",
90 Nfs3ErrExist, "file or directory exists",
91 Nfs3ErrXDev, "cross-device operation",
92 Nfs3ErrNoDev, "no such device",
93 Nfs3ErrNotDir, "not a directory",
94 Nfs3ErrIsDir, "is a directory",
95 Nfs3ErrInval, "invalid arguments",
96 Nfs3ErrFbig, "file too big",
97 Nfs3ErrNoSpc, "no space left on device",
98 Nfs3ErrRoFs, "read-only file system",
99 Nfs3ErrMLink, "too many links",
100 Nfs3ErrNameTooLong, "name too long",
101 Nfs3ErrNotEmpty, "directory not empty",
102 Nfs3ErrDQuot, "dquot",
103 Nfs3ErrStale, "stale handle",
104 Nfs3ErrRemote, "remote error",
105 Nfs3ErrBadHandle, "bad handle",
106 Nfs3ErrNotSync, "out of sync with server",
107 Nfs3ErrBadCookie, "bad cookie",
108 Nfs3ErrNotSupp, "not supported",
109 Nfs3ErrTooSmall, "too small",
110 Nfs3ErrServerFault, "server fault",
111 Nfs3ErrBadType, "bad type",
112 Nfs3ErrJukebox, "jukebox -- try again later",
113 Nfs3ErrFprintNotFound, "fprint not found",
114 Nfs3ErrAborted, "aborted",
118 nfs3Errstr(SunStatus status)
122 for(i=0; i<nelem(etab); i++){
123 if(etab[i].status == status){
124 werrstr(etab[i].msg);
128 werrstr("unknown nfs3 error %d", (int)status);
132 nfs3FileTypeStr(Nfs3FileType x)
136 return "Nfs3FileReg";
138 return "Nfs3FileDir";
140 return "Nfs3FileBlock";
142 return "Nfs3FileChar";
143 case Nfs3FileSymlink:
144 return "Nfs3FileSymlink";
146 return "Nfs3FileSocket";
148 return "Nfs3FileFifo";
155 nfs3HandlePrint(Fmt *fmt, Nfs3Handle *x)
157 fmtprint(fmt, "%s\n", "Nfs3Handle");
158 fmtprint(fmt, "\t%s=", "handle");
160 fmtprint(fmt, "%.*H... (%d)", 64, x->h, x->len);
162 fmtprint(fmt, "%.*H", x->len, x->h);
166 nfs3HandleSize(Nfs3Handle *x)
170 a = 0 + sunVarOpaqueSize(x->len);
174 nfs3HandlePack(uchar *a, uchar *ea, uchar **pa, Nfs3Handle *x)
176 if(x->len > Nfs3MaxHandleSize || sunUint32Pack(a, ea, &a, &x->len) < 0
177 || sunFixedOpaquePack(a, ea, &a, x->h, x->len) < 0)
186 nfs3HandleUnpack(uchar *a, uchar *ea, uchar **pa, Nfs3Handle *x)
191 if(sunUint32Unpack(a, ea, &a, &n) < 0 || n > Nfs3MaxHandleSize)
197 memmove(x->h, ha, n);
206 nfs3TimePrint(Fmt *fmt, Nfs3Time *x)
208 fmtprint(fmt, "%s\n", "Nfs3Time");
209 fmtprint(fmt, "\t%s=", "sec");
210 fmtprint(fmt, "%ud", x->sec);
212 fmtprint(fmt, "\t%s=", "nsec");
213 fmtprint(fmt, "%ud", x->nsec);
217 nfs3TimeSize(Nfs3Time *x)
225 nfs3TimePack(uchar *a, uchar *ea, uchar **pa, Nfs3Time *x)
227 if(sunUint32Pack(a, ea, &a, &x->sec) < 0) goto Err;
228 if(sunUint32Pack(a, ea, &a, &x->nsec) < 0) goto Err;
236 nfs3TimeUnpack(uchar *a, uchar *ea, uchar **pa, Nfs3Time *x)
238 if(sunUint32Unpack(a, ea, &a, &x->sec) < 0) goto Err;
239 if(sunUint32Unpack(a, ea, &a, &x->nsec) < 0) goto Err;
247 nfs3AttrPrint(Fmt *fmt, Nfs3Attr *x)
249 fmtprint(fmt, "%s\n", "Nfs3Attr");
250 fmtprint(fmt, "\t%s=", "type");
251 fmtprint(fmt, "%s", nfs3FileTypeStr(x->type));
253 fmtprint(fmt, "\t%s=", "mode");
254 fmtprint(fmt, "%ud", x->mode);
256 fmtprint(fmt, "\t%s=", "nlink");
257 fmtprint(fmt, "%ud", x->nlink);
259 fmtprint(fmt, "\t%s=", "uid");
260 fmtprint(fmt, "%ud", x->uid);
262 fmtprint(fmt, "\t%s=", "gid");
263 fmtprint(fmt, "%ud", x->gid);
265 fmtprint(fmt, "\t%s=", "size");
266 fmtprint(fmt, "%llud", x->size);
268 fmtprint(fmt, "\t%s=", "used");
269 fmtprint(fmt, "%llud", x->used);
271 fmtprint(fmt, "\t%s=", "major");
272 fmtprint(fmt, "%ud", x->major);
274 fmtprint(fmt, "\t%s=", "minor");
275 fmtprint(fmt, "%ud", x->minor);
277 fmtprint(fmt, "\t%s=", "fsid");
278 fmtprint(fmt, "%llud", x->fsid);
280 fmtprint(fmt, "\t%s=", "fileid");
281 fmtprint(fmt, "%llud", x->fileid);
283 fmtprint(fmt, "\t%s=", "atime");
284 nfs3TimePrint(fmt, &x->atime);
286 fmtprint(fmt, "\t%s=", "mtime");
287 nfs3TimePrint(fmt, &x->mtime);
289 fmtprint(fmt, "\t%s=", "ctime");
290 nfs3TimePrint(fmt, &x->ctime);
294 nfs3AttrSize(Nfs3Attr *x)
298 a = 0 + 4 + 4 + 4 + 4 + 4 + 8 + 8 + 4 + 4 + 8 + 8 + nfs3TimeSize(&x->atime) + nfs3TimeSize(&x->mtime) + nfs3TimeSize(&x->ctime);
302 nfs3AttrPack(uchar *a, uchar *ea, uchar **pa, Nfs3Attr *x)
306 if(i=x->type, sunEnumPack(a, ea, &a, &i) < 0) goto Err;
307 if(sunUint32Pack(a, ea, &a, &x->mode) < 0) goto Err;
308 if(sunUint32Pack(a, ea, &a, &x->nlink) < 0) goto Err;
309 if(sunUint32Pack(a, ea, &a, &x->uid) < 0) goto Err;
310 if(sunUint32Pack(a, ea, &a, &x->gid) < 0) goto Err;
311 if(sunUint64Pack(a, ea, &a, &x->size) < 0) goto Err;
312 if(sunUint64Pack(a, ea, &a, &x->used) < 0) goto Err;
313 if(sunUint32Pack(a, ea, &a, &x->major) < 0) goto Err;
314 if(sunUint32Pack(a, ea, &a, &x->minor) < 0) goto Err;
315 if(sunUint64Pack(a, ea, &a, &x->fsid) < 0) goto Err;
316 if(sunUint64Pack(a, ea, &a, &x->fileid) < 0) goto Err;
317 if(nfs3TimePack(a, ea, &a, &x->atime) < 0) goto Err;
318 if(nfs3TimePack(a, ea, &a, &x->mtime) < 0) goto Err;
319 if(nfs3TimePack(a, ea, &a, &x->ctime) < 0) goto Err;
327 nfs3AttrUnpack(uchar *a, uchar *ea, uchar **pa, Nfs3Attr *x)
330 if(sunEnumUnpack(a, ea, &a, &i) < 0) goto Err; x->type = i;
331 if(sunUint32Unpack(a, ea, &a, &x->mode) < 0) goto Err;
332 if(sunUint32Unpack(a, ea, &a, &x->nlink) < 0) goto Err;
333 if(sunUint32Unpack(a, ea, &a, &x->uid) < 0) goto Err;
334 if(sunUint32Unpack(a, ea, &a, &x->gid) < 0) goto Err;
335 if(sunUint64Unpack(a, ea, &a, &x->size) < 0) goto Err;
336 if(sunUint64Unpack(a, ea, &a, &x->used) < 0) goto Err;
337 if(sunUint32Unpack(a, ea, &a, &x->major) < 0) goto Err;
338 if(sunUint32Unpack(a, ea, &a, &x->minor) < 0) goto Err;
339 if(sunUint64Unpack(a, ea, &a, &x->fsid) < 0) goto Err;
340 if(sunUint64Unpack(a, ea, &a, &x->fileid) < 0) goto Err;
341 if(nfs3TimeUnpack(a, ea, &a, &x->atime) < 0) goto Err;
342 if(nfs3TimeUnpack(a, ea, &a, &x->mtime) < 0) goto Err;
343 if(nfs3TimeUnpack(a, ea, &a, &x->ctime) < 0) goto Err;
351 nfs3WccAttrPrint(Fmt *fmt, Nfs3WccAttr *x)
353 fmtprint(fmt, "%s\n", "Nfs3WccAttr");
354 fmtprint(fmt, "\t%s=", "size");
355 fmtprint(fmt, "%llud", x->size);
357 fmtprint(fmt, "\t%s=", "mtime");
358 nfs3TimePrint(fmt, &x->mtime);
360 fmtprint(fmt, "\t%s=", "ctime");
361 nfs3TimePrint(fmt, &x->ctime);
365 nfs3WccAttrSize(Nfs3WccAttr *x)
369 a = 0 + 8 + nfs3TimeSize(&x->mtime) + nfs3TimeSize(&x->ctime);
373 nfs3WccAttrPack(uchar *a, uchar *ea, uchar **pa, Nfs3WccAttr *x)
375 if(sunUint64Pack(a, ea, &a, &x->size) < 0) goto Err;
376 if(nfs3TimePack(a, ea, &a, &x->mtime) < 0) goto Err;
377 if(nfs3TimePack(a, ea, &a, &x->ctime) < 0) goto Err;
385 nfs3WccAttrUnpack(uchar *a, uchar *ea, uchar **pa, Nfs3WccAttr *x)
387 if(sunUint64Unpack(a, ea, &a, &x->size) < 0) goto Err;
388 if(nfs3TimeUnpack(a, ea, &a, &x->mtime) < 0) goto Err;
389 if(nfs3TimeUnpack(a, ea, &a, &x->ctime) < 0) goto Err;
397 nfs3WccPrint(Fmt *fmt, Nfs3Wcc *x)
399 fmtprint(fmt, "%s\n", "Nfs3Wcc");
400 fmtprint(fmt, "\t%s=", "haveWccAttr");
401 fmtprint(fmt, "%d", x->haveWccAttr);
403 switch(x->haveWccAttr){
405 fmtprint(fmt, "\t%s=", "wccAttr");
406 nfs3WccAttrPrint(fmt, &x->wccAttr);
410 fmtprint(fmt, "\t%s=", "haveAttr");
411 fmtprint(fmt, "%d", x->haveAttr);
415 fmtprint(fmt, "\t%s=", "attr");
416 nfs3AttrPrint(fmt, &x->attr);
422 nfs3WccSize(Nfs3Wcc *x)
427 switch(x->haveWccAttr){
429 a = a + nfs3WccAttrSize(&x->wccAttr);
435 a = a + nfs3AttrSize(&x->attr);
441 nfs3WccPack(uchar *a, uchar *ea, uchar **pa, Nfs3Wcc *x)
443 if(sunUint1Pack(a, ea, &a, &x->haveWccAttr) < 0) goto Err;
444 switch(x->haveWccAttr){
446 if(nfs3WccAttrPack(a, ea, &a, &x->wccAttr) < 0) goto Err;
449 if(sunUint1Pack(a, ea, &a, &x->haveAttr) < 0) goto Err;
452 if(nfs3AttrPack(a, ea, &a, &x->attr) < 0) goto Err;
462 nfs3WccUnpack(uchar *a, uchar *ea, uchar **pa, Nfs3Wcc *x)
464 if(sunUint1Unpack(a, ea, &a, &x->haveWccAttr) < 0) goto Err;
465 switch(x->haveWccAttr){
467 if(nfs3WccAttrUnpack(a, ea, &a, &x->wccAttr) < 0) goto Err;
470 if(sunUint1Unpack(a, ea, &a, &x->haveAttr) < 0) goto Err;
473 if(nfs3AttrUnpack(a, ea, &a, &x->attr) < 0) goto Err;
483 nfs3SetTimeStr(Nfs3SetTime x)
486 case Nfs3SetTimeDont:
487 return "Nfs3SetTimeDont";
488 case Nfs3SetTimeServer:
489 return "Nfs3SetTimeServer";
490 case Nfs3SetTimeClient:
491 return "Nfs3SetTimeClient";
498 nfs3SetAttrPrint(Fmt *fmt, Nfs3SetAttr *x)
500 fmtprint(fmt, "%s\n", "Nfs3SetAttr");
501 fmtprint(fmt, "\t%s=", "setMode");
502 fmtprint(fmt, "%d", x->setMode);
506 fmtprint(fmt, "\t%s=", "mode");
507 fmtprint(fmt, "%ud", x->mode);
511 fmtprint(fmt, "\t%s=", "setUid");
512 fmtprint(fmt, "%d", x->setUid);
516 fmtprint(fmt, "\t%s=", "uid");
517 fmtprint(fmt, "%ud", x->uid);
521 fmtprint(fmt, "\t%s=", "setGid");
522 fmtprint(fmt, "%d", x->setGid);
526 fmtprint(fmt, "\t%s=", "gid");
527 fmtprint(fmt, "%ud", x->gid);
531 fmtprint(fmt, "\t%s=", "setSize");
532 fmtprint(fmt, "%d", x->setSize);
536 fmtprint(fmt, "\t%s=", "size");
537 fmtprint(fmt, "%llud", x->size);
541 fmtprint(fmt, "\t%s=", "setAtime");
542 fmtprint(fmt, "%s", nfs3SetTimeStr(x->setAtime));
545 case Nfs3SetTimeClient:
546 fmtprint(fmt, "\t%s=", "atime");
547 nfs3TimePrint(fmt, &x->atime);
551 fmtprint(fmt, "\t%s=", "setMtime");
552 fmtprint(fmt, "%s", nfs3SetTimeStr(x->setMtime));
555 case Nfs3SetTimeClient:
556 fmtprint(fmt, "\t%s=", "mtime");
557 nfs3TimePrint(fmt, &x->mtime);
563 nfs3SetAttrSize(Nfs3SetAttr *x)
593 case Nfs3SetTimeClient:
594 a = a + nfs3TimeSize(&x->atime);
599 case Nfs3SetTimeClient:
600 a = a + nfs3TimeSize(&x->mtime);
606 nfs3SetAttrPack(uchar *a, uchar *ea, uchar **pa, Nfs3SetAttr *x)
610 if(sunUint1Pack(a, ea, &a, &x->setMode) < 0) goto Err;
613 if(sunUint32Pack(a, ea, &a, &x->mode) < 0) goto Err;
616 if(sunUint1Pack(a, ea, &a, &x->setUid) < 0) goto Err;
619 if(sunUint32Pack(a, ea, &a, &x->uid) < 0) goto Err;
622 if(sunUint1Pack(a, ea, &a, &x->setGid) < 0) goto Err;
625 if(sunUint32Pack(a, ea, &a, &x->gid) < 0) goto Err;
628 if(sunUint1Pack(a, ea, &a, &x->setSize) < 0) goto Err;
631 if(sunUint64Pack(a, ea, &a, &x->size) < 0) goto Err;
634 if(i=x->setAtime, sunEnumPack(a, ea, &a, &i) < 0) goto Err;
636 case Nfs3SetTimeClient:
637 if(nfs3TimePack(a, ea, &a, &x->atime) < 0) goto Err;
640 if(i=x->setMtime, sunEnumPack(a, ea, &a, &i) < 0) goto Err;
642 case Nfs3SetTimeClient:
643 if(nfs3TimePack(a, ea, &a, &x->mtime) < 0) goto Err;
653 nfs3SetAttrUnpack(uchar *a, uchar *ea, uchar **pa, Nfs3SetAttr *x)
657 if(sunUint1Unpack(a, ea, &a, &x->setMode) < 0) goto Err;
660 if(sunUint32Unpack(a, ea, &a, &x->mode) < 0) goto Err;
663 if(sunUint1Unpack(a, ea, &a, &x->setUid) < 0) goto Err;
666 if(sunUint32Unpack(a, ea, &a, &x->uid) < 0) goto Err;
669 if(sunUint1Unpack(a, ea, &a, &x->setGid) < 0) goto Err;
672 if(sunUint32Unpack(a, ea, &a, &x->gid) < 0) goto Err;
675 if(sunUint1Unpack(a, ea, &a, &x->setSize) < 0) goto Err;
678 if(sunUint64Unpack(a, ea, &a, &x->size) < 0) goto Err;
681 if(sunEnumUnpack(a, ea, &a, &i) < 0) goto Err; x->setAtime = i;
683 case Nfs3SetTimeClient:
684 if(nfs3TimeUnpack(a, ea, &a, &x->atime) < 0) goto Err;
687 if(sunEnumUnpack(a, ea, &a, &i) < 0) goto Err; x->setMtime = i;
689 case Nfs3SetTimeClient:
690 if(nfs3TimeUnpack(a, ea, &a, &x->mtime) < 0) goto Err;
700 nfs3TNullPrint(Fmt *fmt, Nfs3TNull *x)
703 fmtprint(fmt, "%s\n", "Nfs3TNull");
706 nfs3TNullSize(Nfs3TNull *x)
714 nfs3TNullPack(uchar *a, uchar *ea, uchar **pa, Nfs3TNull *x)
722 nfs3TNullUnpack(uchar *a, uchar *ea, uchar **pa, Nfs3TNull *x)
730 nfs3RNullPrint(Fmt *fmt, Nfs3RNull *x)
733 fmtprint(fmt, "%s\n", "Nfs3RNull");
736 nfs3RNullSize(Nfs3RNull *x)
744 nfs3RNullPack(uchar *a, uchar *ea, uchar **pa, Nfs3RNull *x)
752 nfs3RNullUnpack(uchar *a, uchar *ea, uchar **pa, Nfs3RNull *x)
760 nfs3TGetattrPrint(Fmt *fmt, Nfs3TGetattr *x)
762 fmtprint(fmt, "%s\n", "Nfs3TGetattr");
763 fmtprint(fmt, "\t%s=", "handle");
764 nfs3HandlePrint(fmt, &x->handle);
768 nfs3TGetattrSize(Nfs3TGetattr *x)
772 a = 0 + nfs3HandleSize(&x->handle);
776 nfs3TGetattrPack(uchar *a, uchar *ea, uchar **pa, Nfs3TGetattr *x)
778 if(nfs3HandlePack(a, ea, &a, &x->handle) < 0) goto Err;
786 nfs3TGetattrUnpack(uchar *a, uchar *ea, uchar **pa, Nfs3TGetattr *x)
788 if(nfs3HandleUnpack(a, ea, &a, &x->handle) < 0) goto Err;
796 nfs3RGetattrPrint(Fmt *fmt, Nfs3RGetattr *x)
798 fmtprint(fmt, "%s\n", "Nfs3RGetattr");
799 fmtprint(fmt, "\t%s=", "status");
800 fmtprint(fmt, "%s", nfs3StatusStr(x->status));
804 fmtprint(fmt, "\t%s=", "attr");
805 nfs3AttrPrint(fmt, &x->attr);
811 nfs3RGetattrSize(Nfs3RGetattr *x)
818 a = a + nfs3AttrSize(&x->attr);
824 nfs3RGetattrPack(uchar *a, uchar *ea, uchar **pa, Nfs3RGetattr *x)
828 if(i=x->status, sunEnumPack(a, ea, &a, &i) < 0) goto Err;
831 if(nfs3AttrPack(a, ea, &a, &x->attr) < 0) goto Err;
841 nfs3RGetattrUnpack(uchar *a, uchar *ea, uchar **pa, Nfs3RGetattr *x)
845 if(sunEnumUnpack(a, ea, &a, &i) < 0) goto Err; x->status = i;
848 if(nfs3AttrUnpack(a, ea, &a, &x->attr) < 0) goto Err;
858 nfs3TSetattrPrint(Fmt *fmt, Nfs3TSetattr *x)
860 fmtprint(fmt, "%s\n", "Nfs3TSetattr");
861 fmtprint(fmt, "\t%s=", "handle");
862 nfs3HandlePrint(fmt, &x->handle);
864 fmtprint(fmt, "\t%s=", "attr");
865 nfs3SetAttrPrint(fmt, &x->attr);
867 fmtprint(fmt, "\t%s=", "checkCtime");
868 fmtprint(fmt, "%d", x->checkCtime);
870 switch(x->checkCtime){
872 fmtprint(fmt, "\t%s=", "ctime");
873 nfs3TimePrint(fmt, &x->ctime);
879 nfs3TSetattrSize(Nfs3TSetattr *x)
883 a = 0 + nfs3HandleSize(&x->handle) + nfs3SetAttrSize(&x->attr) + 4;
884 switch(x->checkCtime){
886 a = a + nfs3TimeSize(&x->ctime);
892 nfs3TSetattrPack(uchar *a, uchar *ea, uchar **pa, Nfs3TSetattr *x)
894 if(nfs3HandlePack(a, ea, &a, &x->handle) < 0) goto Err;
895 if(nfs3SetAttrPack(a, ea, &a, &x->attr) < 0) goto Err;
896 if(sunUint1Pack(a, ea, &a, &x->checkCtime) < 0) goto Err;
897 switch(x->checkCtime){
899 if(nfs3TimePack(a, ea, &a, &x->ctime) < 0) goto Err;
909 nfs3TSetattrUnpack(uchar *a, uchar *ea, uchar **pa, Nfs3TSetattr *x)
911 if(nfs3HandleUnpack(a, ea, &a, &x->handle) < 0) goto Err;
912 if(nfs3SetAttrUnpack(a, ea, &a, &x->attr) < 0) goto Err;
913 if(sunUint1Unpack(a, ea, &a, &x->checkCtime) < 0) goto Err;
914 switch(x->checkCtime){
916 if(nfs3TimeUnpack(a, ea, &a, &x->ctime) < 0) goto Err;
926 nfs3RSetattrPrint(Fmt *fmt, Nfs3RSetattr *x)
928 fmtprint(fmt, "%s\n", "Nfs3RSetattr");
929 fmtprint(fmt, "\t%s=", "status");
930 fmtprint(fmt, "%s", nfs3StatusStr(x->status));
932 fmtprint(fmt, "\t%s=", "wcc");
933 nfs3WccPrint(fmt, &x->wcc);
937 nfs3RSetattrSize(Nfs3RSetattr *x)
941 a = 0 + 4 + nfs3WccSize(&x->wcc);
945 nfs3RSetattrPack(uchar *a, uchar *ea, uchar **pa, Nfs3RSetattr *x)
949 if(i=x->status, sunEnumPack(a, ea, &a, &i) < 0) goto Err;
950 if(nfs3WccPack(a, ea, &a, &x->wcc) < 0) goto Err;
958 nfs3RSetattrUnpack(uchar *a, uchar *ea, uchar **pa, Nfs3RSetattr *x)
962 if(sunEnumUnpack(a, ea, &a, &i) < 0) goto Err; x->status = i;
963 if(nfs3WccUnpack(a, ea, &a, &x->wcc) < 0) goto Err;
971 nfs3TLookupPrint(Fmt *fmt, Nfs3TLookup *x)
973 fmtprint(fmt, "%s\n", "Nfs3TLookup");
974 fmtprint(fmt, "\t%s=", "handle");
975 nfs3HandlePrint(fmt, &x->handle);
977 fmtprint(fmt, "\t%s=", "name");
978 fmtprint(fmt, "\"%s\"", x->name);
982 nfs3TLookupSize(Nfs3TLookup *x)
986 a = 0 + nfs3HandleSize(&x->handle) + sunStringSize(x->name);
990 nfs3TLookupPack(uchar *a, uchar *ea, uchar **pa, Nfs3TLookup *x)
992 if(nfs3HandlePack(a, ea, &a, &x->handle) < 0) goto Err;
993 if(sunStringPack(a, ea, &a, &x->name, -1) < 0) goto Err;
1001 nfs3TLookupUnpack(uchar *a, uchar *ea, uchar **pa, Nfs3TLookup *x)
1003 if(nfs3HandleUnpack(a, ea, &a, &x->handle) < 0) goto Err;
1004 if(sunStringUnpack(a, ea, &a, &x->name, -1) < 0) goto Err;
1012 nfs3RLookupPrint(Fmt *fmt, Nfs3RLookup *x)
1014 fmtprint(fmt, "%s\n", "Nfs3RLookup");
1015 fmtprint(fmt, "\t%s=", "status");
1016 fmtprint(fmt, "%s", nfs3StatusStr(x->status));
1017 fmtprint(fmt, "\n");
1020 fmtprint(fmt, "\t%s=", "handle");
1021 nfs3HandlePrint(fmt, &x->handle);
1022 fmtprint(fmt, "\n");
1023 fmtprint(fmt, "\t%s=", "haveAttr");
1024 fmtprint(fmt, "%d", x->haveAttr);
1025 fmtprint(fmt, "\n");
1026 switch(x->haveAttr){
1028 fmtprint(fmt, "\t%s=", "attr");
1029 nfs3AttrPrint(fmt, &x->attr);
1030 fmtprint(fmt, "\n");
1035 fmtprint(fmt, "\t%s=", "haveDirAttr");
1036 fmtprint(fmt, "%d", x->haveDirAttr);
1037 fmtprint(fmt, "\n");
1038 switch(x->haveDirAttr){
1040 fmtprint(fmt, "\t%s=", "dirAttr");
1041 nfs3AttrPrint(fmt, &x->dirAttr);
1042 fmtprint(fmt, "\n");
1047 nfs3RLookupSize(Nfs3RLookup *x)
1054 a = a + nfs3HandleSize(&x->handle) + 4;
1055 switch(x->haveAttr){
1057 a = a + nfs3AttrSize(&x->attr);
1063 switch(x->haveDirAttr){
1065 a = a + nfs3AttrSize(&x->dirAttr);
1071 nfs3RLookupPack(uchar *a, uchar *ea, uchar **pa, Nfs3RLookup *x)
1075 if(i=x->status, sunEnumPack(a, ea, &a, &i) < 0) goto Err;
1078 if(nfs3HandlePack(a, ea, &a, &x->handle) < 0) goto Err;
1079 if(sunUint1Pack(a, ea, &a, &x->haveAttr) < 0) goto Err;
1080 switch(x->haveAttr){
1082 if(nfs3AttrPack(a, ea, &a, &x->attr) < 0) goto Err;
1087 if(sunUint1Pack(a, ea, &a, &x->haveDirAttr) < 0) goto Err;
1088 switch(x->haveDirAttr){
1090 if(nfs3AttrPack(a, ea, &a, &x->dirAttr) < 0) goto Err;
1100 nfs3RLookupUnpack(uchar *a, uchar *ea, uchar **pa, Nfs3RLookup *x)
1104 if(sunEnumUnpack(a, ea, &a, &i) < 0) goto Err; x->status = i;
1107 if(nfs3HandleUnpack(a, ea, &a, &x->handle) < 0) goto Err;
1108 if(sunUint1Unpack(a, ea, &a, &x->haveAttr) < 0) goto Err;
1109 switch(x->haveAttr){
1111 if(nfs3AttrUnpack(a, ea, &a, &x->attr) < 0) goto Err;
1116 if(sunUint1Unpack(a, ea, &a, &x->haveDirAttr) < 0) goto Err;
1117 switch(x->haveDirAttr){
1119 if(nfs3AttrUnpack(a, ea, &a, &x->dirAttr) < 0) goto Err;
1129 nfs3TAccessPrint(Fmt *fmt, Nfs3TAccess *x)
1131 fmtprint(fmt, "%s\n", "Nfs3TAccess");
1132 fmtprint(fmt, "\t%s=", "handle");
1133 nfs3HandlePrint(fmt, &x->handle);
1134 fmtprint(fmt, "\n");
1135 fmtprint(fmt, "\t%s=", "access");
1136 fmtprint(fmt, "%ud", x->access);
1137 fmtprint(fmt, "\n");
1140 nfs3TAccessSize(Nfs3TAccess *x)
1144 a = 0 + nfs3HandleSize(&x->handle) + 4;
1148 nfs3TAccessPack(uchar *a, uchar *ea, uchar **pa, Nfs3TAccess *x)
1150 if(nfs3HandlePack(a, ea, &a, &x->handle) < 0) goto Err;
1151 if(sunUint32Pack(a, ea, &a, &x->access) < 0) goto Err;
1159 nfs3TAccessUnpack(uchar *a, uchar *ea, uchar **pa, Nfs3TAccess *x)
1161 if(nfs3HandleUnpack(a, ea, &a, &x->handle) < 0) goto Err;
1162 if(sunUint32Unpack(a, ea, &a, &x->access) < 0) goto Err;
1170 nfs3RAccessPrint(Fmt *fmt, Nfs3RAccess *x)
1172 fmtprint(fmt, "%s\n", "Nfs3RAccess");
1173 fmtprint(fmt, "\t%s=", "status");
1174 fmtprint(fmt, "%s", nfs3StatusStr(x->status));
1175 fmtprint(fmt, "\n");
1176 fmtprint(fmt, "\t%s=", "haveAttr");
1177 fmtprint(fmt, "%d", x->haveAttr);
1178 fmtprint(fmt, "\n");
1179 switch(x->haveAttr){
1181 fmtprint(fmt, "\t%s=", "attr");
1182 nfs3AttrPrint(fmt, &x->attr);
1183 fmtprint(fmt, "\n");
1188 fmtprint(fmt, "\t%s=", "access");
1189 fmtprint(fmt, "%ud", x->access);
1190 fmtprint(fmt, "\n");
1195 nfs3RAccessSize(Nfs3RAccess *x)
1200 switch(x->haveAttr){
1202 a = a + nfs3AttrSize(&x->attr);
1213 nfs3RAccessPack(uchar *a, uchar *ea, uchar **pa, Nfs3RAccess *x)
1217 if(i=x->status, sunEnumPack(a, ea, &a, &i) < 0) goto Err;
1218 if(sunUint1Pack(a, ea, &a, &x->haveAttr) < 0) goto Err;
1219 switch(x->haveAttr){
1221 if(nfs3AttrPack(a, ea, &a, &x->attr) < 0) goto Err;
1226 if(sunUint32Pack(a, ea, &a, &x->access) < 0) goto Err;
1236 nfs3RAccessUnpack(uchar *a, uchar *ea, uchar **pa, Nfs3RAccess *x)
1240 if(sunEnumUnpack(a, ea, &a, &i) < 0) goto Err; x->status = i;
1241 if(sunUint1Unpack(a, ea, &a, &x->haveAttr) < 0) goto Err;
1242 switch(x->haveAttr){
1244 if(nfs3AttrUnpack(a, ea, &a, &x->attr) < 0) goto Err;
1249 if(sunUint32Unpack(a, ea, &a, &x->access) < 0) goto Err;
1259 nfs3TReadlinkPrint(Fmt *fmt, Nfs3TReadlink *x)
1261 fmtprint(fmt, "%s\n", "Nfs3TReadlink");
1262 fmtprint(fmt, "\t%s=", "handle");
1263 nfs3HandlePrint(fmt, &x->handle);
1264 fmtprint(fmt, "\n");
1267 nfs3TReadlinkSize(Nfs3TReadlink *x)
1271 a = 0 + nfs3HandleSize(&x->handle);
1275 nfs3TReadlinkPack(uchar *a, uchar *ea, uchar **pa, Nfs3TReadlink *x)
1277 if(nfs3HandlePack(a, ea, &a, &x->handle) < 0) goto Err;
1285 nfs3TReadlinkUnpack(uchar *a, uchar *ea, uchar **pa, Nfs3TReadlink *x)
1287 if(nfs3HandleUnpack(a, ea, &a, &x->handle) < 0) goto Err;
1295 nfs3RReadlinkPrint(Fmt *fmt, Nfs3RReadlink *x)
1297 fmtprint(fmt, "%s\n", "Nfs3RReadlink");
1298 fmtprint(fmt, "\t%s=", "status");
1299 fmtprint(fmt, "%s", nfs3StatusStr(x->status));
1300 fmtprint(fmt, "\n");
1301 fmtprint(fmt, "\t%s=", "haveAttr");
1302 fmtprint(fmt, "%d", x->haveAttr);
1303 fmtprint(fmt, "\n");
1304 switch(x->haveAttr){
1306 fmtprint(fmt, "\t%s=", "attr");
1307 nfs3AttrPrint(fmt, &x->attr);
1308 fmtprint(fmt, "\n");
1313 fmtprint(fmt, "\t%s=", "data");
1314 fmtprint(fmt, "\"%s\"", x->data);
1315 fmtprint(fmt, "\n");
1320 nfs3RReadlinkSize(Nfs3RReadlink *x)
1325 switch(x->haveAttr){
1327 a = a + nfs3AttrSize(&x->attr);
1332 a = a + sunStringSize(x->data);
1338 nfs3RReadlinkPack(uchar *a, uchar *ea, uchar **pa, Nfs3RReadlink *x)
1342 if(i=x->status, sunEnumPack(a, ea, &a, &i) < 0) goto Err;
1343 if(sunUint1Pack(a, ea, &a, &x->haveAttr) < 0) goto Err;
1344 switch(x->haveAttr){
1346 if(nfs3AttrPack(a, ea, &a, &x->attr) < 0) goto Err;
1351 if(sunStringPack(a, ea, &a, &x->data, -1) < 0) goto Err;
1361 nfs3RReadlinkUnpack(uchar *a, uchar *ea, uchar **pa, Nfs3RReadlink *x)
1365 if(sunEnumUnpack(a, ea, &a, &i) < 0) goto Err; x->status = i;
1366 if(sunUint1Unpack(a, ea, &a, &x->haveAttr) < 0) goto Err;
1367 switch(x->haveAttr){
1369 if(nfs3AttrUnpack(a, ea, &a, &x->attr) < 0) goto Err;
1374 if(sunStringUnpack(a, ea, &a, &x->data, -1) < 0) goto Err;
1384 nfs3TReadPrint(Fmt *fmt, Nfs3TRead *x)
1386 fmtprint(fmt, "%s\n", "Nfs3TRead");
1387 fmtprint(fmt, "\t%s=", "handle");
1388 nfs3HandlePrint(fmt, &x->handle);
1389 fmtprint(fmt, "\n");
1390 fmtprint(fmt, "\t%s=", "offset");
1391 fmtprint(fmt, "%llud", x->offset);
1392 fmtprint(fmt, "\n");
1393 fmtprint(fmt, "\t%s=", "count");
1394 fmtprint(fmt, "%ud", x->count);
1395 fmtprint(fmt, "\n");
1398 nfs3TReadSize(Nfs3TRead *x)
1402 a = 0 + nfs3HandleSize(&x->handle) + 8 + 4;
1406 nfs3TReadPack(uchar *a, uchar *ea, uchar **pa, Nfs3TRead *x)
1408 if(nfs3HandlePack(a, ea, &a, &x->handle) < 0) goto Err;
1409 if(sunUint64Pack(a, ea, &a, &x->offset) < 0) goto Err;
1410 if(sunUint32Pack(a, ea, &a, &x->count) < 0) goto Err;
1418 nfs3TReadUnpack(uchar *a, uchar *ea, uchar **pa, Nfs3TRead *x)
1420 if(nfs3HandleUnpack(a, ea, &a, &x->handle) < 0) goto Err;
1421 if(sunUint64Unpack(a, ea, &a, &x->offset) < 0) goto Err;
1422 if(sunUint32Unpack(a, ea, &a, &x->count) < 0) goto Err;
1430 nfs3RReadPrint(Fmt *fmt, Nfs3RRead *x)
1432 fmtprint(fmt, "%s\n", "Nfs3RRead");
1433 fmtprint(fmt, "\t%s=", "status");
1434 fmtprint(fmt, "%s", nfs3StatusStr(x->status));
1435 fmtprint(fmt, "\n");
1436 fmtprint(fmt, "\t%s=", "haveAttr");
1437 fmtprint(fmt, "%d", x->haveAttr);
1438 fmtprint(fmt, "\n");
1439 switch(x->haveAttr){
1441 fmtprint(fmt, "\t%s=", "attr");
1442 nfs3AttrPrint(fmt, &x->attr);
1443 fmtprint(fmt, "\n");
1448 fmtprint(fmt, "\t%s=", "count");
1449 fmtprint(fmt, "%ud", x->count);
1450 fmtprint(fmt, "\n");
1451 fmtprint(fmt, "\t%s=", "eof");
1452 fmtprint(fmt, "%d", x->eof);
1453 fmtprint(fmt, "\n");
1454 fmtprint(fmt, "\t%s=", "data");
1456 fmtprint(fmt, "%.*H", x->ndata, x->data);
1458 fmtprint(fmt, "%.32H...", x->data);
1459 fmtprint(fmt, "\n");
1464 nfs3RReadSize(Nfs3RRead *x)
1469 switch(x->haveAttr){
1471 a = a + nfs3AttrSize(&x->attr);
1476 a = a + 4 + 4 + sunVarOpaqueSize(x->ndata);
1482 nfs3RReadPack(uchar *a, uchar *ea, uchar **pa, Nfs3RRead *x)
1486 if(i=x->status, sunEnumPack(a, ea, &a, &i) < 0) goto Err;
1487 if(sunUint1Pack(a, ea, &a, &x->haveAttr) < 0) goto Err;
1488 switch(x->haveAttr){
1490 if(nfs3AttrPack(a, ea, &a, &x->attr) < 0) goto Err;
1495 if(sunUint32Pack(a, ea, &a, &x->count) < 0) goto Err;
1496 if(sunUint1Pack(a, ea, &a, &x->eof) < 0) goto Err;
1497 if(sunVarOpaquePack(a, ea, &a, &x->data, &x->ndata, x->count) < 0) goto Err;
1507 nfs3RReadUnpack(uchar *a, uchar *ea, uchar **pa, Nfs3RRead *x)
1511 if(sunEnumUnpack(a, ea, &a, &i) < 0) goto Err; x->status = i;
1512 if(sunUint1Unpack(a, ea, &a, &x->haveAttr) < 0) goto Err;
1513 switch(x->haveAttr){
1515 if(nfs3AttrUnpack(a, ea, &a, &x->attr) < 0) goto Err;
1520 if(sunUint32Unpack(a, ea, &a, &x->count) < 0) goto Err;
1521 if(sunUint1Unpack(a, ea, &a, &x->eof) < 0) goto Err;
1522 if(sunVarOpaqueUnpack(a, ea, &a, &x->data, &x->ndata, x->count) < 0) goto Err;
1532 nfs3SyncStr(Nfs3Sync x)
1536 return "Nfs3SyncNone";
1538 return "Nfs3SyncData";
1540 return "Nfs3SyncFile";
1547 nfs3TWritePrint(Fmt *fmt, Nfs3TWrite *x)
1549 fmtprint(fmt, "%s\n", "Nfs3TWrite");
1550 fmtprint(fmt, "\t%s=", "file");
1551 nfs3HandlePrint(fmt, &x->handle);
1552 fmtprint(fmt, "\n");
1553 fmtprint(fmt, "\t%s=", "offset");
1554 fmtprint(fmt, "%llud", x->offset);
1555 fmtprint(fmt, "\n");
1556 fmtprint(fmt, "\t%s=", "count");
1557 fmtprint(fmt, "%ud", x->count);
1558 fmtprint(fmt, "\n");
1559 fmtprint(fmt, "\t%s=", "stable");
1560 fmtprint(fmt, "%s", nfs3SyncStr(x->stable));
1561 fmtprint(fmt, "\n");
1562 fmtprint(fmt, "\t%s=", "data");
1564 fmtprint(fmt, "%.32H... (%d)", x->data, x->ndata);
1566 fmtprint(fmt, "%.*H", x->ndata, x->data);
1567 fmtprint(fmt, "\n");
1570 nfs3TWriteSize(Nfs3TWrite *x)
1574 a = 0 + nfs3HandleSize(&x->handle) + 8 + 4 + 4 + sunVarOpaqueSize(x->ndata);
1578 nfs3TWritePack(uchar *a, uchar *ea, uchar **pa, Nfs3TWrite *x)
1582 if(nfs3HandlePack(a, ea, &a, &x->handle) < 0) goto Err;
1583 if(sunUint64Pack(a, ea, &a, &x->offset) < 0) goto Err;
1584 if(sunUint32Pack(a, ea, &a, &x->count) < 0) goto Err;
1585 if(i=x->stable, sunEnumPack(a, ea, &a, &i) < 0) goto Err;
1586 if(sunVarOpaquePack(a, ea, &a, &x->data, &x->ndata, x->count) < 0) goto Err;
1594 nfs3TWriteUnpack(uchar *a, uchar *ea, uchar **pa, Nfs3TWrite *x)
1598 if(nfs3HandleUnpack(a, ea, &a, &x->handle) < 0) goto Err;
1599 if(sunUint64Unpack(a, ea, &a, &x->offset) < 0) goto Err;
1600 if(sunUint32Unpack(a, ea, &a, &x->count) < 0) goto Err;
1601 if(sunEnumUnpack(a, ea, &a, &i) < 0) goto Err; x->stable = i;
1602 if(sunVarOpaqueUnpack(a, ea, &a, &x->data, &x->ndata, x->count) < 0) goto Err;
1610 nfs3RWritePrint(Fmt *fmt, Nfs3RWrite *x)
1612 fmtprint(fmt, "%s\n", "Nfs3RWrite");
1613 fmtprint(fmt, "\t%s=", "status");
1614 fmtprint(fmt, "%s", nfs3StatusStr(x->status));
1615 fmtprint(fmt, "\n");
1616 fmtprint(fmt, "\t%s=", "wcc");
1617 nfs3WccPrint(fmt, &x->wcc);
1618 fmtprint(fmt, "\n");
1621 fmtprint(fmt, "\t%s=", "count");
1622 fmtprint(fmt, "%ud", x->count);
1623 fmtprint(fmt, "\n");
1624 fmtprint(fmt, "\t%s=", "committed");
1625 fmtprint(fmt, "%s", nfs3SyncStr(x->committed));
1626 fmtprint(fmt, "\n");
1627 fmtprint(fmt, "\t%s=", "verf");
1628 fmtprint(fmt, "%.*H", Nfs3WriteVerfSize, x->verf);
1629 fmtprint(fmt, "\n");
1634 nfs3RWriteSize(Nfs3RWrite *x)
1638 a = 0 + 4 + nfs3WccSize(&x->wcc);
1641 a = a + 4 + 4 + Nfs3WriteVerfSize;
1647 nfs3RWritePack(uchar *a, uchar *ea, uchar **pa, Nfs3RWrite *x)
1651 if(i=x->status, sunEnumPack(a, ea, &a, &i) < 0) goto Err;
1652 if(nfs3WccPack(a, ea, &a, &x->wcc) < 0) goto Err;
1655 if(sunUint32Pack(a, ea, &a, &x->count) < 0) goto Err;
1656 if(i=x->committed, sunEnumPack(a, ea, &a, &i) < 0) goto Err;
1657 if(sunFixedOpaquePack(a, ea, &a, x->verf, Nfs3WriteVerfSize) < 0) goto Err;
1667 nfs3RWriteUnpack(uchar *a, uchar *ea, uchar **pa, Nfs3RWrite *x)
1671 if(sunEnumUnpack(a, ea, &a, &i) < 0) goto Err; x->status = i;
1672 if(nfs3WccUnpack(a, ea, &a, &x->wcc) < 0) goto Err;
1675 if(sunUint32Unpack(a, ea, &a, &x->count) < 0) goto Err;
1676 if(sunEnumUnpack(a, ea, &a, &i) < 0) goto Err; x->committed = i;
1677 if(sunFixedOpaqueUnpack(a, ea, &a, x->verf, Nfs3WriteVerfSize) < 0) goto Err;
1687 nfs3CreateStr(Nfs3Create x)
1690 case Nfs3CreateUnchecked:
1691 return "Nfs3CreateUnchecked";
1692 case Nfs3CreateGuarded:
1693 return "Nfs3CreateGuarded";
1694 case Nfs3CreateExclusive:
1695 return "Nfs3CreateExclusive";
1702 nfs3TCreatePrint(Fmt *fmt, Nfs3TCreate *x)
1704 fmtprint(fmt, "%s\n", "Nfs3TCreate");
1705 fmtprint(fmt, "\t%s=", "handle");
1706 nfs3HandlePrint(fmt, &x->handle);
1707 fmtprint(fmt, "\n");
1708 fmtprint(fmt, "\t%s=", "name");
1709 fmtprint(fmt, "\"%s\"", x->name);
1710 fmtprint(fmt, "\n");
1711 fmtprint(fmt, "\t%s=", "mode");
1712 fmtprint(fmt, "%s", nfs3CreateStr(x->mode));
1713 fmtprint(fmt, "\n");
1715 case Nfs3CreateUnchecked:
1716 case Nfs3CreateGuarded:
1717 fmtprint(fmt, "\t%s=", "attr");
1718 nfs3SetAttrPrint(fmt, &x->attr);
1719 fmtprint(fmt, "\n");
1721 case Nfs3CreateExclusive:
1722 fmtprint(fmt, "\t%s=", "verf");
1723 fmtprint(fmt, "%.*H", Nfs3CreateVerfSize, x->verf);
1724 fmtprint(fmt, "\n");
1729 nfs3TCreateSize(Nfs3TCreate *x)
1733 a = 0 + nfs3HandleSize(&x->handle) + sunStringSize(x->name) + 4;
1735 case Nfs3CreateUnchecked:
1736 case Nfs3CreateGuarded:
1737 a = a + nfs3SetAttrSize(&x->attr);
1739 case Nfs3CreateExclusive:
1740 a = a + Nfs3CreateVerfSize;
1746 nfs3TCreatePack(uchar *a, uchar *ea, uchar **pa, Nfs3TCreate *x)
1750 if(nfs3HandlePack(a, ea, &a, &x->handle) < 0) goto Err;
1751 if(sunStringPack(a, ea, &a, &x->name, -1) < 0) goto Err;
1752 if(i=x->mode, sunEnumPack(a, ea, &a, &i) < 0) goto Err;
1754 case Nfs3CreateUnchecked:
1755 case Nfs3CreateGuarded:
1756 if(nfs3SetAttrPack(a, ea, &a, &x->attr) < 0) goto Err;
1758 case Nfs3CreateExclusive:
1759 if(sunFixedOpaquePack(a, ea, &a, x->verf, Nfs3CreateVerfSize) < 0) goto Err;
1769 nfs3TCreateUnpack(uchar *a, uchar *ea, uchar **pa, Nfs3TCreate *x)
1773 if(nfs3HandleUnpack(a, ea, &a, &x->handle) < 0) goto Err;
1774 if(sunStringUnpack(a, ea, &a, &x->name, -1) < 0) goto Err;
1775 if(sunEnumUnpack(a, ea, &a, &i) < 0) goto Err; x->mode = i;
1777 case Nfs3CreateUnchecked:
1778 case Nfs3CreateGuarded:
1779 if(nfs3SetAttrUnpack(a, ea, &a, &x->attr) < 0) goto Err;
1781 case Nfs3CreateExclusive:
1782 if(sunFixedOpaqueUnpack(a, ea, &a, x->verf, Nfs3CreateVerfSize) < 0) goto Err;
1792 nfs3RCreatePrint(Fmt *fmt, Nfs3RCreate *x)
1794 fmtprint(fmt, "%s\n", "Nfs3RCreate");
1795 fmtprint(fmt, "\t%s=", "status");
1796 fmtprint(fmt, "%s", nfs3StatusStr(x->status));
1797 fmtprint(fmt, "\n");
1800 fmtprint(fmt, "\t%s=", "haveHandle");
1801 fmtprint(fmt, "%d", x->haveHandle);
1802 fmtprint(fmt, "\n");
1803 switch(x->haveHandle){
1805 fmtprint(fmt, "\t%s=", "handle");
1806 nfs3HandlePrint(fmt, &x->handle);
1807 fmtprint(fmt, "\n");
1810 fmtprint(fmt, "\t%s=", "haveAttr");
1811 fmtprint(fmt, "%d", x->haveAttr);
1812 fmtprint(fmt, "\n");
1813 switch(x->haveAttr){
1815 fmtprint(fmt, "\t%s=", "attr");
1816 nfs3AttrPrint(fmt, &x->attr);
1817 fmtprint(fmt, "\n");
1822 fmtprint(fmt, "\t%s=", "dirWcc");
1823 nfs3WccPrint(fmt, &x->dirWcc);
1824 fmtprint(fmt, "\n");
1827 nfs3RCreateSize(Nfs3RCreate *x)
1835 switch(x->haveHandle){
1837 a = a + nfs3HandleSize(&x->handle);
1841 switch(x->haveAttr){
1843 a = a + nfs3AttrSize(&x->attr);
1848 a = a + nfs3WccSize(&x->dirWcc);
1852 nfs3RCreatePack(uchar *a, uchar *ea, uchar **pa, Nfs3RCreate *x)
1856 if(i=x->status, sunEnumPack(a, ea, &a, &i) < 0) goto Err;
1859 if(sunUint1Pack(a, ea, &a, &x->haveHandle) < 0) goto Err;
1860 switch(x->haveHandle){
1862 if(nfs3HandlePack(a, ea, &a, &x->handle) < 0) goto Err;
1865 if(sunUint1Pack(a, ea, &a, &x->haveAttr) < 0) goto Err;
1866 switch(x->haveAttr){
1868 if(nfs3AttrPack(a, ea, &a, &x->attr) < 0) goto Err;
1873 if(nfs3WccPack(a, ea, &a, &x->dirWcc) < 0) goto Err;
1881 nfs3RCreateUnpack(uchar *a, uchar *ea, uchar **pa, Nfs3RCreate *x)
1885 if(sunEnumUnpack(a, ea, &a, &i) < 0) goto Err; x->status = i;
1888 if(sunUint1Unpack(a, ea, &a, &x->haveHandle) < 0) goto Err;
1889 switch(x->haveHandle){
1891 if(nfs3HandleUnpack(a, ea, &a, &x->handle) < 0) goto Err;
1894 if(sunUint1Unpack(a, ea, &a, &x->haveAttr) < 0) goto Err;
1895 switch(x->haveAttr){
1897 if(nfs3AttrUnpack(a, ea, &a, &x->attr) < 0) goto Err;
1902 if(nfs3WccUnpack(a, ea, &a, &x->dirWcc) < 0) goto Err;
1910 nfs3TMkdirPrint(Fmt *fmt, Nfs3TMkdir *x)
1912 fmtprint(fmt, "%s\n", "Nfs3TMkdir");
1913 fmtprint(fmt, "\t%s=", "handle");
1914 nfs3HandlePrint(fmt, &x->handle);
1915 fmtprint(fmt, "\n");
1916 fmtprint(fmt, "\t%s=", "name");
1917 fmtprint(fmt, "\"%s\"", x->name);
1918 fmtprint(fmt, "\n");
1919 fmtprint(fmt, "\t%s=", "attr");
1920 nfs3SetAttrPrint(fmt, &x->attr);
1921 fmtprint(fmt, "\n");
1924 nfs3TMkdirSize(Nfs3TMkdir *x)
1928 a = 0 + nfs3HandleSize(&x->handle) + sunStringSize(x->name) + nfs3SetAttrSize(&x->attr);
1932 nfs3TMkdirPack(uchar *a, uchar *ea, uchar **pa, Nfs3TMkdir *x)
1934 if(nfs3HandlePack(a, ea, &a, &x->handle) < 0) goto Err;
1935 if(sunStringPack(a, ea, &a, &x->name, -1) < 0) goto Err;
1936 if(nfs3SetAttrPack(a, ea, &a, &x->attr) < 0) goto Err;
1944 nfs3TMkdirUnpack(uchar *a, uchar *ea, uchar **pa, Nfs3TMkdir *x)
1946 if(nfs3HandleUnpack(a, ea, &a, &x->handle) < 0) goto Err;
1947 if(sunStringUnpack(a, ea, &a, &x->name, -1) < 0) goto Err;
1948 if(nfs3SetAttrUnpack(a, ea, &a, &x->attr) < 0) goto Err;
1956 nfs3RMkdirPrint(Fmt *fmt, Nfs3RMkdir *x)
1958 fmtprint(fmt, "%s\n", "Nfs3RMkdir");
1959 fmtprint(fmt, "\t%s=", "status");
1960 fmtprint(fmt, "%s", nfs3StatusStr(x->status));
1961 fmtprint(fmt, "\n");
1964 fmtprint(fmt, "\t%s=", "haveHandle");
1965 fmtprint(fmt, "%d", x->haveHandle);
1966 fmtprint(fmt, "\n");
1967 switch(x->haveHandle){
1969 fmtprint(fmt, "\t%s=", "handle");
1970 nfs3HandlePrint(fmt, &x->handle);
1971 fmtprint(fmt, "\n");
1974 fmtprint(fmt, "\t%s=", "haveAttr");
1975 fmtprint(fmt, "%d", x->haveAttr);
1976 fmtprint(fmt, "\n");
1977 switch(x->haveAttr){
1979 fmtprint(fmt, "\t%s=", "attr");
1980 nfs3AttrPrint(fmt, &x->attr);
1981 fmtprint(fmt, "\n");
1986 fmtprint(fmt, "\t%s=", "dirWcc");
1987 nfs3WccPrint(fmt, &x->dirWcc);
1988 fmtprint(fmt, "\n");
1991 nfs3RMkdirSize(Nfs3RMkdir *x)
1999 switch(x->haveHandle){
2001 a = a + nfs3HandleSize(&x->handle);
2005 switch(x->haveAttr){
2007 a = a + nfs3AttrSize(&x->attr);
2012 a = a + nfs3WccSize(&x->dirWcc);
2016 nfs3RMkdirPack(uchar *a, uchar *ea, uchar **pa, Nfs3RMkdir *x)
2020 if(i=x->status, sunEnumPack(a, ea, &a, &i) < 0) goto Err;
2023 if(sunUint1Pack(a, ea, &a, &x->haveHandle) < 0) goto Err;
2024 switch(x->haveHandle){
2026 if(nfs3HandlePack(a, ea, &a, &x->handle) < 0) goto Err;
2029 if(sunUint1Pack(a, ea, &a, &x->haveAttr) < 0) goto Err;
2030 switch(x->haveAttr){
2032 if(nfs3AttrPack(a, ea, &a, &x->attr) < 0) goto Err;
2037 if(nfs3WccPack(a, ea, &a, &x->dirWcc) < 0) goto Err;
2045 nfs3RMkdirUnpack(uchar *a, uchar *ea, uchar **pa, Nfs3RMkdir *x)
2049 if(sunEnumUnpack(a, ea, &a, &i) < 0) goto Err; x->status = i;
2052 if(sunUint1Unpack(a, ea, &a, &x->haveHandle) < 0) goto Err;
2053 switch(x->haveHandle){
2055 if(nfs3HandleUnpack(a, ea, &a, &x->handle) < 0) goto Err;
2058 if(sunUint1Unpack(a, ea, &a, &x->haveAttr) < 0) goto Err;
2059 switch(x->haveAttr){
2061 if(nfs3AttrUnpack(a, ea, &a, &x->attr) < 0) goto Err;
2066 if(nfs3WccUnpack(a, ea, &a, &x->dirWcc) < 0) goto Err;
2074 nfs3TSymlinkPrint(Fmt *fmt, Nfs3TSymlink *x)
2076 fmtprint(fmt, "%s\n", "Nfs3TSymlink");
2077 fmtprint(fmt, "\t%s=", "handle");
2078 nfs3HandlePrint(fmt, &x->handle);
2079 fmtprint(fmt, "\n");
2080 fmtprint(fmt, "\t%s=", "name");
2081 fmtprint(fmt, "\"%s\"", x->name);
2082 fmtprint(fmt, "\n");
2083 fmtprint(fmt, "\t%s=", "attr");
2084 nfs3SetAttrPrint(fmt, &x->attr);
2085 fmtprint(fmt, "\n");
2086 fmtprint(fmt, "\t%s=", "data");
2087 fmtprint(fmt, "\"%s\"", x->data);
2088 fmtprint(fmt, "\n");
2091 nfs3TSymlinkSize(Nfs3TSymlink *x)
2095 a = 0 + nfs3HandleSize(&x->handle) + sunStringSize(x->name) + nfs3SetAttrSize(&x->attr) + sunStringSize(x->data);
2099 nfs3TSymlinkPack(uchar *a, uchar *ea, uchar **pa, Nfs3TSymlink *x)
2101 if(nfs3HandlePack(a, ea, &a, &x->handle) < 0) goto Err;
2102 if(sunStringPack(a, ea, &a, &x->name, -1) < 0) goto Err;
2103 if(nfs3SetAttrPack(a, ea, &a, &x->attr) < 0) goto Err;
2104 if(sunStringPack(a, ea, &a, &x->data, -1) < 0) goto Err;
2112 nfs3TSymlinkUnpack(uchar *a, uchar *ea, uchar **pa, Nfs3TSymlink *x)
2114 if(nfs3HandleUnpack(a, ea, &a, &x->handle) < 0) goto Err;
2115 if(sunStringUnpack(a, ea, &a, &x->name, -1) < 0) goto Err;
2116 if(nfs3SetAttrUnpack(a, ea, &a, &x->attr) < 0) goto Err;
2117 if(sunStringUnpack(a, ea, &a, &x->data, -1) < 0) goto Err;
2125 nfs3RSymlinkPrint(Fmt *fmt, Nfs3RSymlink *x)
2127 fmtprint(fmt, "%s\n", "Nfs3RSymlink");
2128 fmtprint(fmt, "\t%s=", "status");
2129 fmtprint(fmt, "%s", nfs3StatusStr(x->status));
2130 fmtprint(fmt, "\n");
2133 fmtprint(fmt, "\t%s=", "haveHandle");
2134 fmtprint(fmt, "%d", x->haveHandle);
2135 fmtprint(fmt, "\n");
2136 switch(x->haveHandle){
2138 fmtprint(fmt, "\t%s=", "handle");
2139 nfs3HandlePrint(fmt, &x->handle);
2140 fmtprint(fmt, "\n");
2143 fmtprint(fmt, "\t%s=", "haveAttr");
2144 fmtprint(fmt, "%d", x->haveAttr);
2145 fmtprint(fmt, "\n");
2146 switch(x->haveAttr){
2148 fmtprint(fmt, "\t%s=", "attr");
2149 nfs3AttrPrint(fmt, &x->attr);
2150 fmtprint(fmt, "\n");
2155 fmtprint(fmt, "\t%s=", "dirWcc");
2156 nfs3WccPrint(fmt, &x->dirWcc);
2157 fmtprint(fmt, "\n");
2160 nfs3RSymlinkSize(Nfs3RSymlink *x)
2168 switch(x->haveHandle){
2170 a = a + nfs3HandleSize(&x->handle);
2174 switch(x->haveAttr){
2176 a = a + nfs3AttrSize(&x->attr);
2181 a = a + nfs3WccSize(&x->dirWcc);
2185 nfs3RSymlinkPack(uchar *a, uchar *ea, uchar **pa, Nfs3RSymlink *x)
2189 if(i=x->status, sunEnumPack(a, ea, &a, &i) < 0) goto Err;
2192 if(sunUint1Pack(a, ea, &a, &x->haveHandle) < 0) goto Err;
2193 switch(x->haveHandle){
2195 if(nfs3HandlePack(a, ea, &a, &x->handle) < 0) goto Err;
2198 if(sunUint1Pack(a, ea, &a, &x->haveAttr) < 0) goto Err;
2199 switch(x->haveAttr){
2201 if(nfs3AttrPack(a, ea, &a, &x->attr) < 0) goto Err;
2206 if(nfs3WccPack(a, ea, &a, &x->dirWcc) < 0) goto Err;
2214 nfs3RSymlinkUnpack(uchar *a, uchar *ea, uchar **pa, Nfs3RSymlink *x)
2218 if(sunEnumUnpack(a, ea, &a, &i) < 0) goto Err; x->status = i;
2221 if(sunUint1Unpack(a, ea, &a, &x->haveHandle) < 0) goto Err;
2222 switch(x->haveHandle){
2224 if(nfs3HandleUnpack(a, ea, &a, &x->handle) < 0) goto Err;
2227 if(sunUint1Unpack(a, ea, &a, &x->haveAttr) < 0) goto Err;
2228 switch(x->haveAttr){
2230 if(nfs3AttrUnpack(a, ea, &a, &x->attr) < 0) goto Err;
2235 if(nfs3WccUnpack(a, ea, &a, &x->dirWcc) < 0) goto Err;
2243 nfs3TMknodPrint(Fmt *fmt, Nfs3TMknod *x)
2245 fmtprint(fmt, "%s\n", "Nfs3TMknod");
2246 fmtprint(fmt, "\t%s=", "handle");
2247 nfs3HandlePrint(fmt, &x->handle);
2248 fmtprint(fmt, "\n");
2249 fmtprint(fmt, "\t%s=", "name");
2250 fmtprint(fmt, "\"%s\"", x->name);
2251 fmtprint(fmt, "\n");
2252 fmtprint(fmt, "\t%s=", "type");
2253 fmtprint(fmt, "%s", nfs3FileTypeStr(x->type));
2254 fmtprint(fmt, "\n");
2258 fmtprint(fmt, "\t%s=", "attr");
2259 nfs3SetAttrPrint(fmt, &x->attr);
2260 fmtprint(fmt, "\n");
2261 fmtprint(fmt, "\t%s=", "major");
2262 fmtprint(fmt, "%ud", x->major);
2263 fmtprint(fmt, "\n");
2264 fmtprint(fmt, "\t%s=", "minor");
2265 fmtprint(fmt, "%ud", x->minor);
2266 fmtprint(fmt, "\n");
2268 case Nfs3FileSocket:
2270 fmtprint(fmt, "\t%s=", "attr");
2271 nfs3SetAttrPrint(fmt, &x->attr);
2272 fmtprint(fmt, "\n");
2277 nfs3TMknodSize(Nfs3TMknod *x)
2281 a = 0 + nfs3HandleSize(&x->handle) + sunStringSize(x->name) + 4;
2285 a = a + nfs3SetAttrSize(&x->attr) + 4 + 4;
2287 case Nfs3FileSocket:
2289 a = a + nfs3SetAttrSize(&x->attr);
2295 nfs3TMknodPack(uchar *a, uchar *ea, uchar **pa, Nfs3TMknod *x)
2299 if(nfs3HandlePack(a, ea, &a, &x->handle) < 0) goto Err;
2300 if(sunStringPack(a, ea, &a, &x->name, -1) < 0) goto Err;
2301 if(i=x->type, sunEnumPack(a, ea, &a, &i) < 0) goto Err;
2305 if(nfs3SetAttrPack(a, ea, &a, &x->attr) < 0) goto Err;
2306 if(sunUint32Pack(a, ea, &a, &x->major) < 0) goto Err;
2307 if(sunUint32Pack(a, ea, &a, &x->minor) < 0) goto Err;
2309 case Nfs3FileSocket:
2311 if(nfs3SetAttrPack(a, ea, &a, &x->attr) < 0) goto Err;
2321 nfs3TMknodUnpack(uchar *a, uchar *ea, uchar **pa, Nfs3TMknod *x)
2325 if(nfs3HandleUnpack(a, ea, &a, &x->handle) < 0) goto Err;
2326 if(sunStringUnpack(a, ea, &a, &x->name, -1) < 0) goto Err;
2327 if(sunEnumUnpack(a, ea, &a, &i) < 0) goto Err; x->type = i;
2331 if(nfs3SetAttrUnpack(a, ea, &a, &x->attr) < 0) goto Err;
2332 if(sunUint32Unpack(a, ea, &a, &x->major) < 0) goto Err;
2333 if(sunUint32Unpack(a, ea, &a, &x->minor) < 0) goto Err;
2335 case Nfs3FileSocket:
2337 if(nfs3SetAttrUnpack(a, ea, &a, &x->attr) < 0) goto Err;
2347 nfs3RMknodPrint(Fmt *fmt, Nfs3RMknod *x)
2349 fmtprint(fmt, "%s\n", "Nfs3RMknod");
2350 fmtprint(fmt, "\t%s=", "status");
2351 fmtprint(fmt, "%s", nfs3StatusStr(x->status));
2352 fmtprint(fmt, "\n");
2355 fmtprint(fmt, "\t%s=", "haveHandle");
2356 fmtprint(fmt, "%d", x->haveHandle);
2357 fmtprint(fmt, "\n");
2358 switch(x->haveHandle){
2360 fmtprint(fmt, "\t%s=", "handle");
2361 nfs3HandlePrint(fmt, &x->handle);
2362 fmtprint(fmt, "\n");
2365 fmtprint(fmt, "\t%s=", "haveAttr");
2366 fmtprint(fmt, "%d", x->haveAttr);
2367 fmtprint(fmt, "\n");
2368 switch(x->haveAttr){
2370 fmtprint(fmt, "\t%s=", "attr");
2371 nfs3AttrPrint(fmt, &x->attr);
2372 fmtprint(fmt, "\n");
2377 fmtprint(fmt, "\t%s=", "dirWcc");
2378 nfs3WccPrint(fmt, &x->dirWcc);
2379 fmtprint(fmt, "\n");
2382 nfs3RMknodSize(Nfs3RMknod *x)
2390 switch(x->haveHandle){
2392 a = a + nfs3HandleSize(&x->handle);
2396 switch(x->haveAttr){
2398 a = a + nfs3AttrSize(&x->attr);
2403 a = a + nfs3WccSize(&x->dirWcc);
2407 nfs3RMknodPack(uchar *a, uchar *ea, uchar **pa, Nfs3RMknod *x)
2411 if(i=x->status, sunEnumPack(a, ea, &a, &i) < 0) goto Err;
2414 if(sunUint1Pack(a, ea, &a, &x->haveHandle) < 0) goto Err;
2415 switch(x->haveHandle){
2417 if(nfs3HandlePack(a, ea, &a, &x->handle) < 0) goto Err;
2420 if(sunUint1Pack(a, ea, &a, &x->haveAttr) < 0) goto Err;
2421 switch(x->haveAttr){
2423 if(nfs3AttrPack(a, ea, &a, &x->attr) < 0) goto Err;
2428 if(nfs3WccPack(a, ea, &a, &x->dirWcc) < 0) goto Err;
2436 nfs3RMknodUnpack(uchar *a, uchar *ea, uchar **pa, Nfs3RMknod *x)
2440 if(sunEnumUnpack(a, ea, &a, &i) < 0) goto Err; x->status = i;
2443 if(sunUint1Unpack(a, ea, &a, &x->haveHandle) < 0) goto Err;
2444 switch(x->haveHandle){
2446 if(nfs3HandleUnpack(a, ea, &a, &x->handle) < 0) goto Err;
2449 if(sunUint1Unpack(a, ea, &a, &x->haveAttr) < 0) goto Err;
2450 switch(x->haveAttr){
2452 if(nfs3AttrUnpack(a, ea, &a, &x->attr) < 0) goto Err;
2457 if(nfs3WccUnpack(a, ea, &a, &x->dirWcc) < 0) goto Err;
2465 nfs3TRemovePrint(Fmt *fmt, Nfs3TRemove *x)
2467 fmtprint(fmt, "%s\n", "Nfs3TRemove");
2468 fmtprint(fmt, "\t%s=", "handle");
2469 nfs3HandlePrint(fmt, &x->handle);
2470 fmtprint(fmt, "\n");
2471 fmtprint(fmt, "\t%s=", "name");
2472 fmtprint(fmt, "\"%s\"", x->name);
2473 fmtprint(fmt, "\n");
2476 nfs3TRemoveSize(Nfs3TRemove *x)
2480 a = 0 + nfs3HandleSize(&x->handle) + sunStringSize(x->name);
2484 nfs3TRemovePack(uchar *a, uchar *ea, uchar **pa, Nfs3TRemove *x)
2486 if(nfs3HandlePack(a, ea, &a, &x->handle) < 0) goto Err;
2487 if(sunStringPack(a, ea, &a, &x->name, -1) < 0) goto Err;
2495 nfs3TRemoveUnpack(uchar *a, uchar *ea, uchar **pa, Nfs3TRemove *x)
2497 if(nfs3HandleUnpack(a, ea, &a, &x->handle) < 0) goto Err;
2498 if(sunStringUnpack(a, ea, &a, &x->name, -1) < 0) goto Err;
2506 nfs3RRemovePrint(Fmt *fmt, Nfs3RRemove *x)
2508 fmtprint(fmt, "%s\n", "Nfs3RRemove");
2509 fmtprint(fmt, "\t%s=", "status");
2510 fmtprint(fmt, "%s", nfs3StatusStr(x->status));
2511 fmtprint(fmt, "\n");
2512 fmtprint(fmt, "\t%s=", "wcc");
2513 nfs3WccPrint(fmt, &x->wcc);
2514 fmtprint(fmt, "\n");
2517 nfs3RRemoveSize(Nfs3RRemove *x)
2521 a = 0 + 4 + nfs3WccSize(&x->wcc);
2525 nfs3RRemovePack(uchar *a, uchar *ea, uchar **pa, Nfs3RRemove *x)
2529 if(i=x->status, sunEnumPack(a, ea, &a, &i) < 0) goto Err;
2530 if(nfs3WccPack(a, ea, &a, &x->wcc) < 0) goto Err;
2538 nfs3RRemoveUnpack(uchar *a, uchar *ea, uchar **pa, Nfs3RRemove *x)
2542 if(sunEnumUnpack(a, ea, &a, &i) < 0) goto Err; x->status = i;
2543 if(nfs3WccUnpack(a, ea, &a, &x->wcc) < 0) goto Err;
2551 nfs3TRmdirPrint(Fmt *fmt, Nfs3TRmdir *x)
2553 fmtprint(fmt, "%s\n", "Nfs3TRmdir");
2554 fmtprint(fmt, "\t%s=", "handle");
2555 nfs3HandlePrint(fmt, &x->handle);
2556 fmtprint(fmt, "\n");
2557 fmtprint(fmt, "\t%s=", "name");
2558 fmtprint(fmt, "\"%s\"", x->name);
2559 fmtprint(fmt, "\n");
2562 nfs3TRmdirSize(Nfs3TRmdir *x)
2566 a = 0 + nfs3HandleSize(&x->handle) + sunStringSize(x->name);
2570 nfs3TRmdirPack(uchar *a, uchar *ea, uchar **pa, Nfs3TRmdir *x)
2572 if(nfs3HandlePack(a, ea, &a, &x->handle) < 0) goto Err;
2573 if(sunStringPack(a, ea, &a, &x->name, -1) < 0) goto Err;
2581 nfs3TRmdirUnpack(uchar *a, uchar *ea, uchar **pa, Nfs3TRmdir *x)
2583 if(nfs3HandleUnpack(a, ea, &a, &x->handle) < 0) goto Err;
2584 if(sunStringUnpack(a, ea, &a, &x->name, -1) < 0) goto Err;
2592 nfs3RRmdirPrint(Fmt *fmt, Nfs3RRmdir *x)
2594 fmtprint(fmt, "%s\n", "Nfs3RRmdir");
2595 fmtprint(fmt, "\t%s=", "status");
2596 fmtprint(fmt, "%s", nfs3StatusStr(x->status));
2597 fmtprint(fmt, "\n");
2598 fmtprint(fmt, "\t%s=", "wcc");
2599 nfs3WccPrint(fmt, &x->wcc);
2600 fmtprint(fmt, "\n");
2603 nfs3RRmdirSize(Nfs3RRmdir *x)
2607 a = 0 + 4 + nfs3WccSize(&x->wcc);
2611 nfs3RRmdirPack(uchar *a, uchar *ea, uchar **pa, Nfs3RRmdir *x)
2615 if(i=x->status, sunEnumPack(a, ea, &a, &i) < 0) goto Err;
2616 if(nfs3WccPack(a, ea, &a, &x->wcc) < 0) goto Err;
2624 nfs3RRmdirUnpack(uchar *a, uchar *ea, uchar **pa, Nfs3RRmdir *x)
2628 if(sunEnumUnpack(a, ea, &a, &i) < 0) goto Err; x->status = i;
2629 if(nfs3WccUnpack(a, ea, &a, &x->wcc) < 0) goto Err;
2637 nfs3TRenamePrint(Fmt *fmt, Nfs3TRename *x)
2639 fmtprint(fmt, "%s\n", "Nfs3TRename");
2640 fmtprint(fmt, "\t%s=", "from");
2641 fmtprint(fmt, "{\n");
2642 fmtprint(fmt, "\t\t%s=", "handle");
2643 nfs3HandlePrint(fmt, &x->from.handle);
2644 fmtprint(fmt, "\n");
2645 fmtprint(fmt, "\t\t%s=", "name");
2646 fmtprint(fmt, "\"%s\"", x->from.name);
2647 fmtprint(fmt, "\n");
2648 fmtprint(fmt, "\t}");
2649 fmtprint(fmt, "\n");
2650 fmtprint(fmt, "\t%s=", "to");
2651 fmtprint(fmt, "{\n");
2652 fmtprint(fmt, "\t\t%s=", "handle");
2653 nfs3HandlePrint(fmt, &x->to.handle);
2654 fmtprint(fmt, "\n");
2655 fmtprint(fmt, "\t\t%s=", "name");
2656 fmtprint(fmt, "\"%s\"", x->to.name);
2657 fmtprint(fmt, "\n");
2658 fmtprint(fmt, "\t}");
2659 fmtprint(fmt, "\n");
2662 nfs3TRenameSize(Nfs3TRename *x)
2666 a = 0 + nfs3HandleSize(&x->from.handle) + sunStringSize(x->from.name) + nfs3HandleSize(&x->to.handle) + sunStringSize(x->to.name);
2670 nfs3TRenamePack(uchar *a, uchar *ea, uchar **pa, Nfs3TRename *x)
2672 if(nfs3HandlePack(a, ea, &a, &x->from.handle) < 0) goto Err;
2673 if(sunStringPack(a, ea, &a, &x->from.name, -1) < 0) goto Err;
2674 if(nfs3HandlePack(a, ea, &a, &x->to.handle) < 0) goto Err;
2675 if(sunStringPack(a, ea, &a, &x->to.name, -1) < 0) goto Err;
2683 nfs3TRenameUnpack(uchar *a, uchar *ea, uchar **pa, Nfs3TRename *x)
2685 if(nfs3HandleUnpack(a, ea, &a, &x->from.handle) < 0) goto Err;
2686 if(sunStringUnpack(a, ea, &a, &x->from.name, -1) < 0) goto Err;
2687 if(nfs3HandleUnpack(a, ea, &a, &x->to.handle) < 0) goto Err;
2688 if(sunStringUnpack(a, ea, &a, &x->to.name, -1) < 0) goto Err;
2696 nfs3RRenamePrint(Fmt *fmt, Nfs3RRename *x)
2698 fmtprint(fmt, "%s\n", "Nfs3RRename");
2699 fmtprint(fmt, "\t%s=", "status");
2700 fmtprint(fmt, "%s", nfs3StatusStr(x->status));
2701 fmtprint(fmt, "\n");
2702 fmtprint(fmt, "\t%s=", "fromWcc");
2703 nfs3WccPrint(fmt, &x->fromWcc);
2704 fmtprint(fmt, "\n");
2705 fmtprint(fmt, "\t%s=", "toWcc");
2706 nfs3WccPrint(fmt, &x->toWcc);
2707 fmtprint(fmt, "\n");
2710 nfs3RRenameSize(Nfs3RRename *x)
2714 a = 0 + 4 + nfs3WccSize(&x->fromWcc) + nfs3WccSize(&x->toWcc);
2718 nfs3RRenamePack(uchar *a, uchar *ea, uchar **pa, Nfs3RRename *x)
2722 if(i=x->status, sunEnumPack(a, ea, &a, &i) < 0) goto Err;
2723 if(nfs3WccPack(a, ea, &a, &x->fromWcc) < 0) goto Err;
2724 if(nfs3WccPack(a, ea, &a, &x->toWcc) < 0) goto Err;
2732 nfs3RRenameUnpack(uchar *a, uchar *ea, uchar **pa, Nfs3RRename *x)
2736 if(sunEnumUnpack(a, ea, &a, &i) < 0) goto Err; x->status = i;
2737 if(nfs3WccUnpack(a, ea, &a, &x->fromWcc) < 0) goto Err;
2738 if(nfs3WccUnpack(a, ea, &a, &x->toWcc) < 0) goto Err;
2746 nfs3TLinkPrint(Fmt *fmt, Nfs3TLink *x)
2748 fmtprint(fmt, "%s\n", "Nfs3TLink");
2749 fmtprint(fmt, "\t%s=", "handle");
2750 nfs3HandlePrint(fmt, &x->handle);
2751 fmtprint(fmt, "\n");
2752 fmtprint(fmt, "\t%s=", "link");
2753 fmtprint(fmt, "{\n");
2754 fmtprint(fmt, "\t\t%s=", "handle");
2755 nfs3HandlePrint(fmt, &x->link.handle);
2756 fmtprint(fmt, "\n");
2757 fmtprint(fmt, "\t\t%s=", "name");
2758 fmtprint(fmt, "\"%s\"", x->link.name);
2759 fmtprint(fmt, "\n");
2760 fmtprint(fmt, "\t}");
2761 fmtprint(fmt, "\n");
2764 nfs3TLinkSize(Nfs3TLink *x)
2768 a = 0 + nfs3HandleSize(&x->handle) + nfs3HandleSize(&x->link.handle) + sunStringSize(x->link.name);
2772 nfs3TLinkPack(uchar *a, uchar *ea, uchar **pa, Nfs3TLink *x)
2774 if(nfs3HandlePack(a, ea, &a, &x->handle) < 0) goto Err;
2775 if(nfs3HandlePack(a, ea, &a, &x->link.handle) < 0) goto Err;
2776 if(sunStringPack(a, ea, &a, &x->link.name, -1) < 0) goto Err;
2784 nfs3TLinkUnpack(uchar *a, uchar *ea, uchar **pa, Nfs3TLink *x)
2786 if(nfs3HandleUnpack(a, ea, &a, &x->handle) < 0) goto Err;
2787 if(nfs3HandleUnpack(a, ea, &a, &x->link.handle) < 0) goto Err;
2788 if(sunStringUnpack(a, ea, &a, &x->link.name, -1) < 0) goto Err;
2796 nfs3RLinkPrint(Fmt *fmt, Nfs3RLink *x)
2798 fmtprint(fmt, "%s\n", "Nfs3RLink");
2799 fmtprint(fmt, "\t%s=", "status");
2800 fmtprint(fmt, "%s", nfs3StatusStr(x->status));
2801 fmtprint(fmt, "\n");
2802 fmtprint(fmt, "\t%s=", "haveAttr");
2803 fmtprint(fmt, "%d", x->haveAttr);
2804 fmtprint(fmt, "\n");
2805 switch(x->haveAttr){
2807 fmtprint(fmt, "\t%s=", "attr");
2808 nfs3AttrPrint(fmt, &x->attr);
2809 fmtprint(fmt, "\n");
2812 fmtprint(fmt, "\t%s=", "dirWcc");
2813 nfs3WccPrint(fmt, &x->dirWcc);
2814 fmtprint(fmt, "\n");
2817 nfs3RLinkSize(Nfs3RLink *x)
2822 switch(x->haveAttr){
2824 a = a + nfs3AttrSize(&x->attr);
2827 a = a + nfs3WccSize(&x->dirWcc);
2831 nfs3RLinkPack(uchar *a, uchar *ea, uchar **pa, Nfs3RLink *x)
2835 if(i=x->status, sunEnumPack(a, ea, &a, &i) < 0) goto Err;
2836 if(sunUint1Pack(a, ea, &a, &x->haveAttr) < 0) goto Err;
2837 switch(x->haveAttr){
2839 if(nfs3AttrPack(a, ea, &a, &x->attr) < 0) goto Err;
2842 if(nfs3WccPack(a, ea, &a, &x->dirWcc) < 0) goto Err;
2850 nfs3RLinkUnpack(uchar *a, uchar *ea, uchar **pa, Nfs3RLink *x)
2854 if(sunEnumUnpack(a, ea, &a, &i) < 0) goto Err; x->status = i;
2855 if(sunUint1Unpack(a, ea, &a, &x->haveAttr) < 0) goto Err;
2856 switch(x->haveAttr){
2858 if(nfs3AttrUnpack(a, ea, &a, &x->attr) < 0) goto Err;
2861 if(nfs3WccUnpack(a, ea, &a, &x->dirWcc) < 0) goto Err;
2869 nfs3TReadDirPrint(Fmt *fmt, Nfs3TReadDir *x)
2871 fmtprint(fmt, "%s\n", "Nfs3TReadDir");
2872 fmtprint(fmt, "\t%s=", "handle");
2873 nfs3HandlePrint(fmt, &x->handle);
2874 fmtprint(fmt, "\n");
2875 fmtprint(fmt, "\t%s=", "cookie");
2876 fmtprint(fmt, "%llud", x->cookie);
2877 fmtprint(fmt, "\n");
2878 fmtprint(fmt, "\t%s=", "verf");
2879 fmtprint(fmt, "%.*H", Nfs3CookieVerfSize, x->verf);
2880 fmtprint(fmt, "\n");
2881 fmtprint(fmt, "\t%s=", "count");
2882 fmtprint(fmt, "%ud", x->count);
2883 fmtprint(fmt, "\n");
2886 nfs3TReadDirSize(Nfs3TReadDir *x)
2890 a = 0 + nfs3HandleSize(&x->handle) + 8 + Nfs3CookieVerfSize + 4;
2894 nfs3TReadDirPack(uchar *a, uchar *ea, uchar **pa, Nfs3TReadDir *x)
2896 if(nfs3HandlePack(a, ea, &a, &x->handle) < 0) goto Err;
2897 if(sunUint64Pack(a, ea, &a, &x->cookie) < 0) goto Err;
2898 if(sunFixedOpaquePack(a, ea, &a, x->verf, Nfs3CookieVerfSize) < 0) goto Err;
2899 if(sunUint32Pack(a, ea, &a, &x->count) < 0) goto Err;
2907 nfs3TReadDirUnpack(uchar *a, uchar *ea, uchar **pa, Nfs3TReadDir *x)
2909 if(nfs3HandleUnpack(a, ea, &a, &x->handle) < 0) goto Err;
2910 if(sunUint64Unpack(a, ea, &a, &x->cookie) < 0) goto Err;
2911 if(sunFixedOpaqueUnpack(a, ea, &a, x->verf, Nfs3CookieVerfSize) < 0) goto Err;
2912 if(sunUint32Unpack(a, ea, &a, &x->count) < 0) goto Err;
2920 nfs3EntryPrint(Fmt *fmt, Nfs3Entry *x)
2922 fmtprint(fmt, "%s\n", "Nfs3Entry");
2923 fmtprint(fmt, "\t%s=", "fileid");
2924 fmtprint(fmt, "%llud", x->fileid);
2925 fmtprint(fmt, "\n");
2926 fmtprint(fmt, "\t%s=", "name");
2927 fmtprint(fmt, "\"%s\"", x->name);
2928 fmtprint(fmt, "\n");
2929 fmtprint(fmt, "\t%s=", "cookie");
2930 fmtprint(fmt, "%llud", x->cookie);
2931 fmtprint(fmt, "\n");
2934 nfs3EntrySize(Nfs3Entry *x)
2938 a = 0 + 4 + 8 + sunStringSize(x->name) + 8;
2942 nfs3EntryPack(uchar *a, uchar *ea, uchar **pa, Nfs3Entry *x)
2947 if(sunUint1Pack(a, ea, &a, &one) < 0) goto Err;
2948 if(sunUint64Pack(a, ea, &a, &x->fileid) < 0) goto Err;
2949 if(sunStringPack(a, ea, &a, &x->name, -1) < 0) goto Err;
2950 if(sunUint64Pack(a, ea, &a, &x->cookie) < 0) goto Err;
2958 nfs3EntryUnpack(uchar *a, uchar *ea, uchar **pa, Nfs3Entry *x)
2962 memset(x, 0, sizeof *x);
2963 if(sunUint1Unpack(a, ea, &a, &one) < 0 || one != 1) goto Err;
2964 if(sunUint64Unpack(a, ea, &a, &x->fileid) < 0) goto Err;
2965 if(sunStringUnpack(a, ea, &a, &x->name, -1) < 0) goto Err;
2966 if(sunUint64Unpack(a, ea, &a, &x->cookie) < 0) goto Err;
2974 nfs3RReadDirPrint(Fmt *fmt, Nfs3RReadDir *x)
2976 fmtprint(fmt, "%s\n", "Nfs3RReadDir");
2977 fmtprint(fmt, "\t%s=", "status");
2978 fmtprint(fmt, "%s", nfs3StatusStr(x->status));
2979 fmtprint(fmt, "\n");
2980 fmtprint(fmt, "\t%s=", "haveAttr");
2981 fmtprint(fmt, "%d", x->haveAttr);
2982 fmtprint(fmt, "\n");
2983 switch(x->haveAttr){
2985 fmtprint(fmt, "\t%s=", "attr");
2986 nfs3AttrPrint(fmt, &x->attr);
2987 fmtprint(fmt, "\n");
2992 fmtprint(fmt, "\t%s=", "verf");
2993 fmtprint(fmt, "%.*H", Nfs3CookieVerfSize, x->verf);
2994 fmtprint(fmt, "\n");
2995 fmtprint(fmt, "\t%s=%ud\n", "count", x->count);
2996 fmtprint(fmt, "\t%s=", "eof");
2997 fmtprint(fmt, "%d", x->eof);
2998 fmtprint(fmt, "\n");
3003 nfs3RReadDirSize(Nfs3RReadDir *x)
3008 switch(x->haveAttr){
3010 a = a + nfs3AttrSize(&x->attr);
3015 a = a + Nfs3CookieVerfSize;
3023 nfs3RReadDirPack(uchar *a, uchar *ea, uchar **pa, Nfs3RReadDir *x)
3028 if(i=x->status, sunEnumPack(a, ea, &a, &i) < 0) goto Err;
3029 if(sunUint1Pack(a, ea, &a, &x->haveAttr) < 0) goto Err;
3030 switch(x->haveAttr){
3032 if(nfs3AttrPack(a, ea, &a, &x->attr) < 0) goto Err;
3037 if(sunFixedOpaquePack(a, ea, &a, x->verf, Nfs3CookieVerfSize) < 0) goto Err;
3038 if(sunFixedOpaquePack(a, ea, &a, x->data, x->count) < 0) goto Err;
3040 if(sunUint1Pack(a, ea, &a, &zero) < 0) goto Err;
3041 if(sunUint1Pack(a, ea, &a, &x->eof) < 0) goto Err;
3051 countEntry(uchar *a, uchar *ea, uchar **pa, u32int *n)
3060 if(sunUint1Unpack(a, ea, &a, &u1) < 0)
3064 if(sunUint64Unpack(a, ea, &a, &u64) < 0
3065 || sunUint32Unpack(a, ea, &a, &u32) < 0)
3070 if(sunUint64Unpack(a, ea, &a, &u64) < 0)
3078 nfs3RReadDirUnpack(uchar *a, uchar *ea, uchar **pa, Nfs3RReadDir *x)
3082 if(sunEnumUnpack(a, ea, &a, &i) < 0) goto Err; x->status = i;
3083 if(sunUint1Unpack(a, ea, &a, &x->haveAttr) < 0) goto Err;
3084 switch(x->haveAttr){
3086 if(nfs3AttrUnpack(a, ea, &a, &x->attr) < 0) goto Err;
3089 if(x->status == Nfs3Ok){
3090 if(sunFixedOpaqueUnpack(a, ea, &a, x->verf, Nfs3CookieVerfSize) < 0) goto Err;
3092 if(countEntry(a, ea, &a, &x->count) < 0) goto Err;
3093 if(sunUint1Unpack(a, ea, &a, &x->eof) < 0) goto Err;
3102 nfs3TReadDirPlusPrint(Fmt *fmt, Nfs3TReadDirPlus *x)
3104 fmtprint(fmt, "%s\n", "Nfs3TReadDirPlus");
3105 fmtprint(fmt, "\t%s=", "handle");
3106 nfs3HandlePrint(fmt, &x->handle);
3107 fmtprint(fmt, "\n");
3108 fmtprint(fmt, "\t%s=", "cookie");
3109 fmtprint(fmt, "%llud", x->cookie);
3110 fmtprint(fmt, "\n");
3111 fmtprint(fmt, "\t%s=", "verf");
3112 fmtprint(fmt, "%.*H", Nfs3CookieVerfSize, x->verf);
3113 fmtprint(fmt, "\n");
3114 fmtprint(fmt, "\t%s=", "dirCount");
3115 fmtprint(fmt, "%ud", x->dirCount);
3116 fmtprint(fmt, "\n");
3117 fmtprint(fmt, "\t%s=", "maxCount");
3118 fmtprint(fmt, "%ud", x->maxCount);
3119 fmtprint(fmt, "\n");
3122 nfs3TReadDirPlusSize(Nfs3TReadDirPlus *x)
3126 a = 0 + nfs3HandleSize(&x->handle) + 8 + Nfs3CookieVerfSize + 4 + 4;
3130 nfs3TReadDirPlusPack(uchar *a, uchar *ea, uchar **pa, Nfs3TReadDirPlus *x)
3132 if(nfs3HandlePack(a, ea, &a, &x->handle) < 0) goto Err;
3133 if(sunUint64Pack(a, ea, &a, &x->cookie) < 0) goto Err;
3134 if(sunFixedOpaquePack(a, ea, &a, x->verf, Nfs3CookieVerfSize) < 0) goto Err;
3135 if(sunUint32Pack(a, ea, &a, &x->dirCount) < 0) goto Err;
3136 if(sunUint32Pack(a, ea, &a, &x->maxCount) < 0) goto Err;
3144 nfs3TReadDirPlusUnpack(uchar *a, uchar *ea, uchar **pa, Nfs3TReadDirPlus *x)
3146 if(nfs3HandleUnpack(a, ea, &a, &x->handle) < 0) goto Err;
3147 if(sunUint64Unpack(a, ea, &a, &x->cookie) < 0) goto Err;
3148 if(sunFixedOpaqueUnpack(a, ea, &a, x->verf, Nfs3CookieVerfSize) < 0) goto Err;
3149 if(sunUint32Unpack(a, ea, &a, &x->dirCount) < 0) goto Err;
3150 if(sunUint32Unpack(a, ea, &a, &x->maxCount) < 0) goto Err;
3158 nfs3EntryPlusPrint(Fmt *fmt, Nfs3Entry *x)
3160 fmtprint(fmt, "%s\n", "Nfs3EntryPlus");
3161 fmtprint(fmt, "\t%s=", "fileid");
3162 fmtprint(fmt, "%llud", x->fileid);
3163 fmtprint(fmt, "\n");
3164 fmtprint(fmt, "\t%s=", "name");
3165 fmtprint(fmt, "\"%s\"", x->name);
3166 fmtprint(fmt, "\n");
3167 fmtprint(fmt, "\t%s=", "cookie");
3168 fmtprint(fmt, "%llud", x->cookie);
3169 fmtprint(fmt, "\n");
3170 fmtprint(fmt, "\t%s=", "haveAttr");
3171 fmtprint(fmt, "%d", x->haveAttr);
3172 fmtprint(fmt, "\n");
3173 switch(x->haveAttr){
3175 fmtprint(fmt, "\t%s=", "attr");
3176 nfs3AttrPrint(fmt, &x->attr);
3177 fmtprint(fmt, "\n");
3180 fmtprint(fmt, "\t%s=", "haveHandle");
3181 fmtprint(fmt, "%d", x->haveHandle);
3182 fmtprint(fmt, "\n");
3183 switch(x->haveHandle){
3185 fmtprint(fmt, "\t%s=", "handle");
3186 nfs3HandlePrint(fmt, &x->handle);
3187 fmtprint(fmt, "\n");
3192 nfs3EntryPlusSize(Nfs3Entry *x)
3196 a = 0 + 8 + sunStringSize(x->name) + 8 + 4;
3197 switch(x->haveAttr){
3199 a = a + nfs3AttrSize(&x->attr);
3203 switch(x->haveHandle){
3205 a = a + nfs3HandleSize(&x->handle);
3211 nfs3EntryPlusPack(uchar *a, uchar *ea, uchar **pa, Nfs3Entry *x)
3215 if(sunUint1Pack(a, ea, &a, &u1) < 0) goto Err;
3216 if(sunUint64Pack(a, ea, &a, &x->fileid) < 0) goto Err;
3217 if(sunStringPack(a, ea, &a, &x->name, -1) < 0) goto Err;
3218 if(sunUint64Pack(a, ea, &a, &x->cookie) < 0) goto Err;
3219 if(sunUint1Pack(a, ea, &a, &x->haveAttr) < 0) goto Err;
3220 switch(x->haveAttr){
3222 if(nfs3AttrPack(a, ea, &a, &x->attr) < 0) goto Err;
3225 if(sunUint1Pack(a, ea, &a, &x->haveHandle) < 0) goto Err;
3226 switch(x->haveHandle){
3228 if(nfs3HandlePack(a, ea, &a, &x->handle) < 0) goto Err;
3238 nfs3EntryPlusUnpack(uchar *a, uchar *ea, uchar **pa, Nfs3Entry *x)
3242 if(sunUint1Unpack(a, ea, &a, &u1) < 0 || u1 != 1) goto Err;
3243 if(sunUint64Unpack(a, ea, &a, &x->fileid) < 0) goto Err;
3244 if(sunStringUnpack(a, ea, &a, &x->name, -1) < 0) goto Err;
3245 if(sunUint64Unpack(a, ea, &a, &x->cookie) < 0) goto Err;
3246 if(sunUint1Unpack(a, ea, &a, &x->haveAttr) < 0) goto Err;
3247 switch(x->haveAttr){
3249 if(nfs3AttrUnpack(a, ea, &a, &x->attr) < 0) goto Err;
3252 if(sunUint1Unpack(a, ea, &a, &x->haveHandle) < 0) goto Err;
3253 switch(x->haveHandle){
3255 if(nfs3HandleUnpack(a, ea, &a, &x->handle) < 0) goto Err;
3265 nfs3RReadDirPlusPrint(Fmt *fmt, Nfs3RReadDirPlus *x)
3267 fmtprint(fmt, "%s\n", "Nfs3RReadDirPlus");
3268 fmtprint(fmt, "\t%s=", "status");
3269 fmtprint(fmt, "%s", nfs3StatusStr(x->status));
3270 fmtprint(fmt, "\n");
3271 fmtprint(fmt, "\t%s=", "haveAttr");
3272 fmtprint(fmt, "%d", x->haveAttr);
3273 fmtprint(fmt, "\n");
3274 switch(x->haveAttr){
3276 fmtprint(fmt, "\t%s=", "attr");
3277 nfs3AttrPrint(fmt, &x->attr);
3278 fmtprint(fmt, "\n");
3283 fmtprint(fmt, "\t%s=", "verf");
3284 fmtprint(fmt, "%.*H", Nfs3CookieVerfSize, x->verf);
3285 fmtprint(fmt, "\n");
3286 fmtprint(fmt, "\tcount=%ud\n", x->count);
3287 fmtprint(fmt, "\t%s=", "eof");
3288 fmtprint(fmt, "%d", x->eof);
3289 fmtprint(fmt, "\n");
3294 nfs3RReadDirPlusSize(Nfs3RReadDirPlus *x)
3299 switch(x->haveAttr){
3301 a = a + nfs3AttrSize(&x->attr);
3306 a = a + Nfs3CookieVerfSize;
3314 nfs3RReadDirPlusPack(uchar *a, uchar *ea, uchar **pa, Nfs3RReadDirPlus *x)
3319 if(i=x->status, sunEnumPack(a, ea, &a, &i) < 0) goto Err;
3320 if(sunUint1Pack(a, ea, &a, &x->haveAttr) < 0) goto Err;
3321 switch(x->haveAttr){
3323 if(nfs3AttrPack(a, ea, &a, &x->attr) < 0) goto Err;
3328 if(sunFixedOpaquePack(a, ea, &a, x->verf, Nfs3CookieVerfSize) < 0) goto Err;
3329 if(sunFixedOpaquePack(a, ea, &a, x->data, x->count) < 0) goto Err;
3331 if(sunUint1Pack(a, ea, &a, &zero) < 0) goto Err;
3332 if(sunUint1Pack(a, ea, &a, &x->eof) < 0) goto Err;
3342 countEntryPlus(uchar *a, uchar *ea, uchar **pa, u32int *n)
3353 if(sunUint1Unpack(a, ea, &a, &u1) < 0)
3357 if(sunUint64Unpack(a, ea, &a, &u64) < 0
3358 || sunUint32Unpack(a, ea, &a, &u32) < 0)
3363 if(sunUint64Unpack(a, ea, &a, &u64) < 0
3364 || sunUint1Unpack(a, ea, &a, &u1) < 0
3365 || (u1 && nfs3AttrUnpack(a, ea, &a, &attr) < 0)
3366 || sunUint1Unpack(a, ea, &a, &u1) < 0
3367 || (u1 && nfs3HandleUnpack(a, ea, &a, &h) < 0))
3376 nfs3RReadDirPlusUnpack(uchar *a, uchar *ea, uchar **pa, Nfs3RReadDirPlus *x)
3380 if(sunEnumUnpack(a, ea, &a, &i) < 0) goto Err; x->status = i;
3381 if(sunUint1Unpack(a, ea, &a, &x->haveAttr) < 0) goto Err;
3382 switch(x->haveAttr){
3384 if(nfs3AttrUnpack(a, ea, &a, &x->attr) < 0) goto Err;
3387 if(x->status == Nfs3Ok){
3388 if(sunFixedOpaqueUnpack(a, ea, &a, x->verf, Nfs3CookieVerfSize) < 0) goto Err;
3390 if(countEntryPlus(a, ea, &a, &x->count) < 0) goto Err;
3391 if(sunUint1Unpack(a, ea, &a, &x->eof) < 0) goto Err;
3400 nfs3TFsStatPrint(Fmt *fmt, Nfs3TFsStat *x)
3402 fmtprint(fmt, "%s\n", "Nfs3TFsStat");
3403 fmtprint(fmt, "\t%s=", "handle");
3404 nfs3HandlePrint(fmt, &x->handle);
3405 fmtprint(fmt, "\n");
3408 nfs3TFsStatSize(Nfs3TFsStat *x)
3412 a = 0 + nfs3HandleSize(&x->handle);
3416 nfs3TFsStatPack(uchar *a, uchar *ea, uchar **pa, Nfs3TFsStat *x)
3418 if(nfs3HandlePack(a, ea, &a, &x->handle) < 0) goto Err;
3426 nfs3TFsStatUnpack(uchar *a, uchar *ea, uchar **pa, Nfs3TFsStat *x)
3428 if(nfs3HandleUnpack(a, ea, &a, &x->handle) < 0) goto Err;
3436 nfs3RFsStatPrint(Fmt *fmt, Nfs3RFsStat *x)
3438 fmtprint(fmt, "%s\n", "Nfs3RFsStat");
3439 fmtprint(fmt, "\t%s=", "status");
3440 fmtprint(fmt, "%s", nfs3StatusStr(x->status));
3441 fmtprint(fmt, "\n");
3442 fmtprint(fmt, "\t%s=", "haveAttr");
3443 fmtprint(fmt, "%d", x->haveAttr);
3444 fmtprint(fmt, "\n");
3445 switch(x->haveAttr){
3447 fmtprint(fmt, "\t%s=", "attr");
3448 nfs3AttrPrint(fmt, &x->attr);
3449 fmtprint(fmt, "\n");
3454 fmtprint(fmt, "\t%s=", "totalBytes");
3455 fmtprint(fmt, "%llud", x->totalBytes);
3456 fmtprint(fmt, "\n");
3457 fmtprint(fmt, "\t%s=", "freeBytes");
3458 fmtprint(fmt, "%llud", x->freeBytes);
3459 fmtprint(fmt, "\n");
3460 fmtprint(fmt, "\t%s=", "availBytes");
3461 fmtprint(fmt, "%llud", x->availBytes);
3462 fmtprint(fmt, "\n");
3463 fmtprint(fmt, "\t%s=", "totalFiles");
3464 fmtprint(fmt, "%llud", x->totalFiles);
3465 fmtprint(fmt, "\n");
3466 fmtprint(fmt, "\t%s=", "freeFiles");
3467 fmtprint(fmt, "%llud", x->freeFiles);
3468 fmtprint(fmt, "\n");
3469 fmtprint(fmt, "\t%s=", "availFiles");
3470 fmtprint(fmt, "%llud", x->availFiles);
3471 fmtprint(fmt, "\n");
3472 fmtprint(fmt, "\t%s=", "invarSec");
3473 fmtprint(fmt, "%ud", x->invarSec);
3474 fmtprint(fmt, "\n");
3479 nfs3RFsStatSize(Nfs3RFsStat *x)
3484 switch(x->haveAttr){
3486 a = a + nfs3AttrSize(&x->attr);
3491 a = a + 8 + 8 + 8 + 8 + 8 + 8 + 4;
3497 nfs3RFsStatPack(uchar *a, uchar *ea, uchar **pa, Nfs3RFsStat *x)
3501 if(i=x->status, sunEnumPack(a, ea, &a, &i) < 0) goto Err;
3502 if(sunUint1Pack(a, ea, &a, &x->haveAttr) < 0) goto Err;
3503 switch(x->haveAttr){
3505 if(nfs3AttrPack(a, ea, &a, &x->attr) < 0) goto Err;
3510 if(sunUint64Pack(a, ea, &a, &x->totalBytes) < 0) goto Err;
3511 if(sunUint64Pack(a, ea, &a, &x->freeBytes) < 0) goto Err;
3512 if(sunUint64Pack(a, ea, &a, &x->availBytes) < 0) goto Err;
3513 if(sunUint64Pack(a, ea, &a, &x->totalFiles) < 0) goto Err;
3514 if(sunUint64Pack(a, ea, &a, &x->freeFiles) < 0) goto Err;
3515 if(sunUint64Pack(a, ea, &a, &x->availFiles) < 0) goto Err;
3516 if(sunUint32Pack(a, ea, &a, &x->invarSec) < 0) goto Err;
3526 nfs3RFsStatUnpack(uchar *a, uchar *ea, uchar **pa, Nfs3RFsStat *x)
3530 if(sunEnumUnpack(a, ea, &a, &i) < 0) goto Err; x->status = i;
3531 if(sunUint1Unpack(a, ea, &a, &x->haveAttr) < 0) goto Err;
3532 switch(x->haveAttr){
3534 if(nfs3AttrUnpack(a, ea, &a, &x->attr) < 0) goto Err;
3539 if(sunUint64Unpack(a, ea, &a, &x->totalBytes) < 0) goto Err;
3540 if(sunUint64Unpack(a, ea, &a, &x->freeBytes) < 0) goto Err;
3541 if(sunUint64Unpack(a, ea, &a, &x->availBytes) < 0) goto Err;
3542 if(sunUint64Unpack(a, ea, &a, &x->totalFiles) < 0) goto Err;
3543 if(sunUint64Unpack(a, ea, &a, &x->freeFiles) < 0) goto Err;
3544 if(sunUint64Unpack(a, ea, &a, &x->availFiles) < 0) goto Err;
3545 if(sunUint32Unpack(a, ea, &a, &x->invarSec) < 0) goto Err;
3555 nfs3TFsInfoPrint(Fmt *fmt, Nfs3TFsInfo *x)
3557 fmtprint(fmt, "%s\n", "Nfs3TFsInfo");
3558 fmtprint(fmt, "\t%s=", "handle");
3559 nfs3HandlePrint(fmt, &x->handle);
3560 fmtprint(fmt, "\n");
3563 nfs3TFsInfoSize(Nfs3TFsInfo *x)
3567 a = 0 + nfs3HandleSize(&x->handle);
3571 nfs3TFsInfoPack(uchar *a, uchar *ea, uchar **pa, Nfs3TFsInfo *x)
3573 if(nfs3HandlePack(a, ea, &a, &x->handle) < 0) goto Err;
3581 nfs3TFsInfoUnpack(uchar *a, uchar *ea, uchar **pa, Nfs3TFsInfo *x)
3583 if(nfs3HandleUnpack(a, ea, &a, &x->handle) < 0) goto Err;
3591 nfs3RFsInfoPrint(Fmt *fmt, Nfs3RFsInfo *x)
3593 fmtprint(fmt, "%s\n", "Nfs3RFsInfo");
3594 fmtprint(fmt, "\t%s=", "status");
3595 fmtprint(fmt, "%s", nfs3StatusStr(x->status));
3596 fmtprint(fmt, "\n");
3597 fmtprint(fmt, "\t%s=", "haveAttr");
3598 fmtprint(fmt, "%d", x->haveAttr);
3599 fmtprint(fmt, "\n");
3600 switch(x->haveAttr){
3602 fmtprint(fmt, "\t%s=", "attr");
3603 nfs3AttrPrint(fmt, &x->attr);
3604 fmtprint(fmt, "\n");
3609 fmtprint(fmt, "\t%s=", "readMax");
3610 fmtprint(fmt, "%ud", x->readMax);
3611 fmtprint(fmt, "\n");
3612 fmtprint(fmt, "\t%s=", "readPref");
3613 fmtprint(fmt, "%ud", x->readPref);
3614 fmtprint(fmt, "\n");
3615 fmtprint(fmt, "\t%s=", "readMult");
3616 fmtprint(fmt, "%ud", x->readMult);
3617 fmtprint(fmt, "\n");
3618 fmtprint(fmt, "\t%s=", "writeMax");
3619 fmtprint(fmt, "%ud", x->writeMax);
3620 fmtprint(fmt, "\n");
3621 fmtprint(fmt, "\t%s=", "writePref");
3622 fmtprint(fmt, "%ud", x->writePref);
3623 fmtprint(fmt, "\n");
3624 fmtprint(fmt, "\t%s=", "writeMult");
3625 fmtprint(fmt, "%ud", x->writeMult);
3626 fmtprint(fmt, "\n");
3627 fmtprint(fmt, "\t%s=", "readDirPref");
3628 fmtprint(fmt, "%ud", x->readDirPref);
3629 fmtprint(fmt, "\n");
3630 fmtprint(fmt, "\t%s=", "maxFileSize");
3631 fmtprint(fmt, "%llud", x->maxFileSize);
3632 fmtprint(fmt, "\n");
3633 fmtprint(fmt, "\t%s=", "timePrec");
3634 nfs3TimePrint(fmt, &x->timePrec);
3635 fmtprint(fmt, "\n");
3636 fmtprint(fmt, "\t%s=", "flags");
3637 fmtprint(fmt, "%ud", x->flags);
3638 fmtprint(fmt, "\n");
3643 nfs3RFsInfoSize(Nfs3RFsInfo *x)
3648 switch(x->haveAttr){
3650 a = a + nfs3AttrSize(&x->attr);
3655 a = a + 4 + 4 + 4 + 4 + 4 + 4 + 4 + 8 + nfs3TimeSize(&x->timePrec) + 4;
3661 nfs3RFsInfoPack(uchar *a, uchar *ea, uchar **pa, Nfs3RFsInfo *x)
3665 if(i=x->status, sunEnumPack(a, ea, &a, &i) < 0) goto Err;
3666 if(sunUint1Pack(a, ea, &a, &x->haveAttr) < 0) goto Err;
3667 switch(x->haveAttr){
3669 if(nfs3AttrPack(a, ea, &a, &x->attr) < 0) goto Err;
3674 if(sunUint32Pack(a, ea, &a, &x->readMax) < 0) goto Err;
3675 if(sunUint32Pack(a, ea, &a, &x->readPref) < 0) goto Err;
3676 if(sunUint32Pack(a, ea, &a, &x->readMult) < 0) goto Err;
3677 if(sunUint32Pack(a, ea, &a, &x->writeMax) < 0) goto Err;
3678 if(sunUint32Pack(a, ea, &a, &x->writePref) < 0) goto Err;
3679 if(sunUint32Pack(a, ea, &a, &x->writeMult) < 0) goto Err;
3680 if(sunUint32Pack(a, ea, &a, &x->readDirPref) < 0) goto Err;
3681 if(sunUint64Pack(a, ea, &a, &x->maxFileSize) < 0) goto Err;
3682 if(nfs3TimePack(a, ea, &a, &x->timePrec) < 0) goto Err;
3683 if(sunUint32Pack(a, ea, &a, &x->flags) < 0) goto Err;
3693 nfs3RFsInfoUnpack(uchar *a, uchar *ea, uchar **pa, Nfs3RFsInfo *x)
3697 if(sunEnumUnpack(a, ea, &a, &i) < 0) goto Err; x->status = i;
3698 if(sunUint1Unpack(a, ea, &a, &x->haveAttr) < 0) goto Err;
3699 switch(x->haveAttr){
3701 if(nfs3AttrUnpack(a, ea, &a, &x->attr) < 0) goto Err;
3706 if(sunUint32Unpack(a, ea, &a, &x->readMax) < 0) goto Err;
3707 if(sunUint32Unpack(a, ea, &a, &x->readPref) < 0) goto Err;
3708 if(sunUint32Unpack(a, ea, &a, &x->readMult) < 0) goto Err;
3709 if(sunUint32Unpack(a, ea, &a, &x->writeMax) < 0) goto Err;
3710 if(sunUint32Unpack(a, ea, &a, &x->writePref) < 0) goto Err;
3711 if(sunUint32Unpack(a, ea, &a, &x->writeMult) < 0) goto Err;
3712 if(sunUint32Unpack(a, ea, &a, &x->readDirPref) < 0) goto Err;
3713 if(sunUint64Unpack(a, ea, &a, &x->maxFileSize) < 0) goto Err;
3714 if(nfs3TimeUnpack(a, ea, &a, &x->timePrec) < 0) goto Err;
3715 if(sunUint32Unpack(a, ea, &a, &x->flags) < 0) goto Err;
3725 nfs3TPathconfPrint(Fmt *fmt, Nfs3TPathconf *x)
3727 fmtprint(fmt, "%s\n", "Nfs3TPathconf");
3728 fmtprint(fmt, "\t%s=", "handle");
3729 nfs3HandlePrint(fmt, &x->handle);
3730 fmtprint(fmt, "\n");
3733 nfs3TPathconfSize(Nfs3TPathconf *x)
3737 a = 0 + nfs3HandleSize(&x->handle);
3741 nfs3TPathconfPack(uchar *a, uchar *ea, uchar **pa, Nfs3TPathconf *x)
3743 if(nfs3HandlePack(a, ea, &a, &x->handle) < 0) goto Err;
3751 nfs3TPathconfUnpack(uchar *a, uchar *ea, uchar **pa, Nfs3TPathconf *x)
3753 if(nfs3HandleUnpack(a, ea, &a, &x->handle) < 0) goto Err;
3761 nfs3RPathconfPrint(Fmt *fmt, Nfs3RPathconf *x)
3763 fmtprint(fmt, "%s\n", "Nfs3RPathconf");
3764 fmtprint(fmt, "\t%s=", "status");
3765 fmtprint(fmt, "%s", nfs3StatusStr(x->status));
3766 fmtprint(fmt, "\n");
3767 fmtprint(fmt, "\t%s=", "haveAttr");
3768 fmtprint(fmt, "%d", x->haveAttr);
3769 fmtprint(fmt, "\n");
3770 switch(x->haveAttr){
3772 fmtprint(fmt, "\t%s=", "attr");
3773 nfs3AttrPrint(fmt, &x->attr);
3774 fmtprint(fmt, "\n");
3779 fmtprint(fmt, "\t%s=", "maxLink");
3780 fmtprint(fmt, "%ud", x->maxLink);
3781 fmtprint(fmt, "\n");
3782 fmtprint(fmt, "\t%s=", "maxName");
3783 fmtprint(fmt, "%ud", x->maxName);
3784 fmtprint(fmt, "\n");
3785 fmtprint(fmt, "\t%s=", "noTrunc");
3786 fmtprint(fmt, "%d", x->noTrunc);
3787 fmtprint(fmt, "\n");
3788 fmtprint(fmt, "\t%s=", "chownRestricted");
3789 fmtprint(fmt, "%d", x->chownRestricted);
3790 fmtprint(fmt, "\n");
3791 fmtprint(fmt, "\t%s=", "caseInsensitive");
3792 fmtprint(fmt, "%d", x->caseInsensitive);
3793 fmtprint(fmt, "\n");
3794 fmtprint(fmt, "\t%s=", "casePreserving");
3795 fmtprint(fmt, "%d", x->casePreserving);
3796 fmtprint(fmt, "\n");
3801 nfs3RPathconfSize(Nfs3RPathconf *x)
3806 switch(x->haveAttr){
3808 a = a + nfs3AttrSize(&x->attr);
3813 a = a + 4 + 4 + 4 + 4 + 4 + 4;
3819 nfs3RPathconfPack(uchar *a, uchar *ea, uchar **pa, Nfs3RPathconf *x)
3823 if(i=x->status, sunEnumPack(a, ea, &a, &i) < 0) goto Err;
3824 if(sunUint1Pack(a, ea, &a, &x->haveAttr) < 0) goto Err;
3825 switch(x->haveAttr){
3827 if(nfs3AttrPack(a, ea, &a, &x->attr) < 0) goto Err;
3832 if(sunUint32Pack(a, ea, &a, &x->maxLink) < 0) goto Err;
3833 if(sunUint32Pack(a, ea, &a, &x->maxName) < 0) goto Err;
3834 if(sunUint1Pack(a, ea, &a, &x->noTrunc) < 0) goto Err;
3835 if(sunUint1Pack(a, ea, &a, &x->chownRestricted) < 0) goto Err;
3836 if(sunUint1Pack(a, ea, &a, &x->caseInsensitive) < 0) goto Err;
3837 if(sunUint1Pack(a, ea, &a, &x->casePreserving) < 0) goto Err;
3847 nfs3RPathconfUnpack(uchar *a, uchar *ea, uchar **pa, Nfs3RPathconf *x)
3851 if(sunEnumUnpack(a, ea, &a, &i) < 0) goto Err; x->status = i;
3852 if(sunUint1Unpack(a, ea, &a, &x->haveAttr) < 0) goto Err;
3853 switch(x->haveAttr){
3855 if(nfs3AttrUnpack(a, ea, &a, &x->attr) < 0) goto Err;
3860 if(sunUint32Unpack(a, ea, &a, &x->maxLink) < 0) goto Err;
3861 if(sunUint32Unpack(a, ea, &a, &x->maxName) < 0) goto Err;
3862 if(sunUint1Unpack(a, ea, &a, &x->noTrunc) < 0) goto Err;
3863 if(sunUint1Unpack(a, ea, &a, &x->chownRestricted) < 0) goto Err;
3864 if(sunUint1Unpack(a, ea, &a, &x->caseInsensitive) < 0) goto Err;
3865 if(sunUint1Unpack(a, ea, &a, &x->casePreserving) < 0) goto Err;
3875 nfs3TCommitPrint(Fmt *fmt, Nfs3TCommit *x)
3877 fmtprint(fmt, "%s\n", "Nfs3TCommit");
3878 fmtprint(fmt, "\t%s=", "handle");
3879 nfs3HandlePrint(fmt, &x->handle);
3880 fmtprint(fmt, "\n");
3881 fmtprint(fmt, "\t%s=", "offset");
3882 fmtprint(fmt, "%llud", x->offset);
3883 fmtprint(fmt, "\n");
3884 fmtprint(fmt, "\t%s=", "count");
3885 fmtprint(fmt, "%ud", x->count);
3886 fmtprint(fmt, "\n");
3889 nfs3TCommitSize(Nfs3TCommit *x)
3893 a = 0 + nfs3HandleSize(&x->handle) + 8 + 4;
3897 nfs3TCommitPack(uchar *a, uchar *ea, uchar **pa, Nfs3TCommit *x)
3899 if(nfs3HandlePack(a, ea, &a, &x->handle) < 0) goto Err;
3900 if(sunUint64Pack(a, ea, &a, &x->offset) < 0) goto Err;
3901 if(sunUint32Pack(a, ea, &a, &x->count) < 0) goto Err;
3909 nfs3TCommitUnpack(uchar *a, uchar *ea, uchar **pa, Nfs3TCommit *x)
3911 if(nfs3HandleUnpack(a, ea, &a, &x->handle) < 0) goto Err;
3912 if(sunUint64Unpack(a, ea, &a, &x->offset) < 0) goto Err;
3913 if(sunUint32Unpack(a, ea, &a, &x->count) < 0) goto Err;
3921 nfs3RCommitPrint(Fmt *fmt, Nfs3RCommit *x)
3923 fmtprint(fmt, "%s\n", "Nfs3RCommit");
3924 fmtprint(fmt, "\t%s=", "status");
3925 fmtprint(fmt, "%s", nfs3StatusStr(x->status));
3926 fmtprint(fmt, "\n");
3927 fmtprint(fmt, "\t%s=", "wcc");
3928 nfs3WccPrint(fmt, &x->wcc);
3929 fmtprint(fmt, "\n");
3932 fmtprint(fmt, "\t%s=", "verf");
3933 fmtprint(fmt, "%.*H", Nfs3WriteVerfSize, x->verf);
3934 fmtprint(fmt, "\n");
3939 nfs3RCommitSize(Nfs3RCommit *x)
3943 a = 0 + 4 + nfs3WccSize(&x->wcc);
3946 a = a + Nfs3WriteVerfSize;
3952 nfs3RCommitPack(uchar *a, uchar *ea, uchar **pa, Nfs3RCommit *x)
3956 if(i=x->status, sunEnumPack(a, ea, &a, &i) < 0) goto Err;
3957 if(nfs3WccPack(a, ea, &a, &x->wcc) < 0) goto Err;
3960 if(sunFixedOpaquePack(a, ea, &a, x->verf, Nfs3WriteVerfSize) < 0) goto Err;
3970 nfs3RCommitUnpack(uchar *a, uchar *ea, uchar **pa, Nfs3RCommit *x)
3974 if(sunEnumUnpack(a, ea, &a, &i) < 0) goto Err; x->status = i;
3975 if(nfs3WccUnpack(a, ea, &a, &x->wcc) < 0) goto Err;
3978 if(sunFixedOpaqueUnpack(a, ea, &a, x->verf, Nfs3WriteVerfSize) < 0) goto Err;
3988 typedef int (*P)(uchar*, uchar*, uchar**, SunCall*);
3989 typedef void (*F)(Fmt*, SunCall*);
3990 typedef uint (*S)(SunCall*);
3992 static SunProc proc[] = {
3993 (P)nfs3TNullPack, (P)nfs3TNullUnpack, (S)nfs3TNullSize, (F)nfs3TNullPrint, sizeof(Nfs3TNull),
3994 (P)nfs3RNullPack, (P)nfs3RNullUnpack, (S)nfs3RNullSize, (F)nfs3RNullPrint, sizeof(Nfs3RNull),
3995 (P)nfs3TGetattrPack, (P)nfs3TGetattrUnpack, (S)nfs3TGetattrSize, (F)nfs3TGetattrPrint, sizeof(Nfs3TGetattr),
3996 (P)nfs3RGetattrPack, (P)nfs3RGetattrUnpack, (S)nfs3RGetattrSize, (F)nfs3RGetattrPrint, sizeof(Nfs3RGetattr),
3997 (P)nfs3TSetattrPack, (P)nfs3TSetattrUnpack, (S)nfs3TSetattrSize, (F)nfs3TSetattrPrint, sizeof(Nfs3TSetattr),
3998 (P)nfs3RSetattrPack, (P)nfs3RSetattrUnpack, (S)nfs3RSetattrSize, (F)nfs3RSetattrPrint, sizeof(Nfs3RSetattr),
3999 (P)nfs3TLookupPack, (P)nfs3TLookupUnpack, (S)nfs3TLookupSize, (F)nfs3TLookupPrint, sizeof(Nfs3TLookup),
4000 (P)nfs3RLookupPack, (P)nfs3RLookupUnpack, (S)nfs3RLookupSize, (F)nfs3RLookupPrint, sizeof(Nfs3RLookup),
4001 (P)nfs3TAccessPack, (P)nfs3TAccessUnpack, (S)nfs3TAccessSize, (F)nfs3TAccessPrint, sizeof(Nfs3TAccess),
4002 (P)nfs3RAccessPack, (P)nfs3RAccessUnpack, (S)nfs3RAccessSize, (F)nfs3RAccessPrint, sizeof(Nfs3RAccess),
4003 (P)nfs3TReadlinkPack, (P)nfs3TReadlinkUnpack, (S)nfs3TReadlinkSize, (F)nfs3TReadlinkPrint, sizeof(Nfs3TReadlink),
4004 (P)nfs3RReadlinkPack, (P)nfs3RReadlinkUnpack, (S)nfs3RReadlinkSize, (F)nfs3RReadlinkPrint, sizeof(Nfs3RReadlink),
4005 (P)nfs3TReadPack, (P)nfs3TReadUnpack, (S)nfs3TReadSize, (F)nfs3TReadPrint, sizeof(Nfs3TRead),
4006 (P)nfs3RReadPack, (P)nfs3RReadUnpack, (S)nfs3RReadSize, (F)nfs3RReadPrint, sizeof(Nfs3RRead),
4007 (P)nfs3TWritePack, (P)nfs3TWriteUnpack, (S)nfs3TWriteSize, (F)nfs3TWritePrint, sizeof(Nfs3TWrite),
4008 (P)nfs3RWritePack, (P)nfs3RWriteUnpack, (S)nfs3RWriteSize, (F)nfs3RWritePrint, sizeof(Nfs3RWrite),
4009 (P)nfs3TCreatePack, (P)nfs3TCreateUnpack, (S)nfs3TCreateSize, (F)nfs3TCreatePrint, sizeof(Nfs3TCreate),
4010 (P)nfs3RCreatePack, (P)nfs3RCreateUnpack, (S)nfs3RCreateSize, (F)nfs3RCreatePrint, sizeof(Nfs3RCreate),
4011 (P)nfs3TMkdirPack, (P)nfs3TMkdirUnpack, (S)nfs3TMkdirSize, (F)nfs3TMkdirPrint, sizeof(Nfs3TMkdir),
4012 (P)nfs3RMkdirPack, (P)nfs3RMkdirUnpack, (S)nfs3RMkdirSize, (F)nfs3RMkdirPrint, sizeof(Nfs3RMkdir),
4013 (P)nfs3TSymlinkPack, (P)nfs3TSymlinkUnpack, (S)nfs3TSymlinkSize, (F)nfs3TSymlinkPrint, sizeof(Nfs3TSymlink),
4014 (P)nfs3RSymlinkPack, (P)nfs3RSymlinkUnpack, (S)nfs3RSymlinkSize, (F)nfs3RSymlinkPrint, sizeof(Nfs3RSymlink),
4015 (P)nfs3TMknodPack, (P)nfs3TMknodUnpack, (S)nfs3TMknodSize, (F)nfs3TMknodPrint, sizeof(Nfs3TMknod),
4016 (P)nfs3RMknodPack, (P)nfs3RMknodUnpack, (S)nfs3RMknodSize, (F)nfs3RMknodPrint, sizeof(Nfs3RMknod),
4017 (P)nfs3TRemovePack, (P)nfs3TRemoveUnpack, (S)nfs3TRemoveSize, (F)nfs3TRemovePrint, sizeof(Nfs3TRemove),
4018 (P)nfs3RRemovePack, (P)nfs3RRemoveUnpack, (S)nfs3RRemoveSize, (F)nfs3RRemovePrint, sizeof(Nfs3RRemove),
4019 (P)nfs3TRmdirPack, (P)nfs3TRmdirUnpack, (S)nfs3TRmdirSize, (F)nfs3TRmdirPrint, sizeof(Nfs3TRmdir),
4020 (P)nfs3RRmdirPack, (P)nfs3RRmdirUnpack, (S)nfs3RRmdirSize, (F)nfs3RRmdirPrint, sizeof(Nfs3RRmdir),
4021 (P)nfs3TRenamePack, (P)nfs3TRenameUnpack, (S)nfs3TRenameSize, (F)nfs3TRenamePrint, sizeof(Nfs3TRename),
4022 (P)nfs3RRenamePack, (P)nfs3RRenameUnpack, (S)nfs3RRenameSize, (F)nfs3RRenamePrint, sizeof(Nfs3RRename),
4023 (P)nfs3TLinkPack, (P)nfs3TLinkUnpack, (S)nfs3TLinkSize, (F)nfs3TLinkPrint, sizeof(Nfs3TLink),
4024 (P)nfs3RLinkPack, (P)nfs3RLinkUnpack, (S)nfs3RLinkSize, (F)nfs3RLinkPrint, sizeof(Nfs3RLink),
4025 (P)nfs3TReadDirPack, (P)nfs3TReadDirUnpack, (S)nfs3TReadDirSize, (F)nfs3TReadDirPrint, sizeof(Nfs3TReadDir),
4026 (P)nfs3RReadDirPack, (P)nfs3RReadDirUnpack, (S)nfs3RReadDirSize, (F)nfs3RReadDirPrint, sizeof(Nfs3RReadDir),
4027 (P)nfs3TReadDirPlusPack, (P)nfs3TReadDirPlusUnpack, (S)nfs3TReadDirPlusSize, (F)nfs3TReadDirPlusPrint, sizeof(Nfs3TReadDirPlus),
4028 (P)nfs3RReadDirPlusPack, (P)nfs3RReadDirPlusUnpack, (S)nfs3RReadDirPlusSize, (F)nfs3RReadDirPlusPrint, sizeof(Nfs3RReadDirPlus),
4029 (P)nfs3TFsStatPack, (P)nfs3TFsStatUnpack, (S)nfs3TFsStatSize, (F)nfs3TFsStatPrint, sizeof(Nfs3TFsStat),
4030 (P)nfs3RFsStatPack, (P)nfs3RFsStatUnpack, (S)nfs3RFsStatSize, (F)nfs3RFsStatPrint, sizeof(Nfs3RFsStat),
4031 (P)nfs3TFsInfoPack, (P)nfs3TFsInfoUnpack, (S)nfs3TFsInfoSize, (F)nfs3TFsInfoPrint, sizeof(Nfs3TFsInfo),
4032 (P)nfs3RFsInfoPack, (P)nfs3RFsInfoUnpack, (S)nfs3RFsInfoSize, (F)nfs3RFsInfoPrint, sizeof(Nfs3RFsInfo),
4033 (P)nfs3TPathconfPack, (P)nfs3TPathconfUnpack, (S)nfs3TPathconfSize, (F)nfs3TPathconfPrint, sizeof(Nfs3TPathconf),
4034 (P)nfs3RPathconfPack, (P)nfs3RPathconfUnpack, (S)nfs3RPathconfSize, (F)nfs3RPathconfPrint, sizeof(Nfs3RPathconf),
4035 (P)nfs3TCommitPack, (P)nfs3TCommitUnpack, (S)nfs3TCommitSize, (F)nfs3TCommitPrint, sizeof(Nfs3TCommit),
4036 (P)nfs3RCommitPack, (P)nfs3RCommitUnpack, (S)nfs3RCommitSize, (F)nfs3RCommitPrint, sizeof(Nfs3RCommit)