1NFS4(3)                            nfs4 4.2                            NFS4(3)
2
3
4

NAME

6       packet.nfs.nfs4 - NFSv4 decoding module
7

CLASSES

9   class ACCESS4args(baseobj.BaseObj)
10       struct ACCESS4args {
11           /* CURRENT_FH: object */
12           access4 access;
13       };
14
15
16       Methods defined here:
17       ---------------------
18
19       __init__(self, unpack)
20
21   class ACCESS4res(baseobj.BaseObj)
22       union switch ACCESS4res (nfsstat4 status) {
23           case const.NFS4_OK:
24               ACCESS4resok resok;
25           default:
26               void;
27       };
28
29
30       Methods defined here:
31       ---------------------
32
33       __init__(self, unpack)
34
35   class ACCESS4resok(baseobj.BaseObj)
36       struct ACCESS4resok {
37           access4 supported;
38           access4 access;
39       };
40
41
42       Methods defined here:
43       ---------------------
44
45       __init__(self, unpack)
46
47   class ALLOCATE4args(baseobj.BaseObj)
48       struct ALLOCATE4args {
49           /* CURRENT_FH: file */
50           stateid4 stateid;
51           offset4  offset;
52           length4  length;
53       };
54
55
56       Methods defined here:
57       ---------------------
58
59       __init__(self, unpack)
60
61   class ALLOCATE4res(baseobj.BaseObj)
62       struct ALLOCATE4res {
63           nfsstat4 status;
64       };
65
66
67       Methods defined here:
68       ---------------------
69
70       __init__(self, unpack)
71
72   class BACKCHANNEL_CTL4args(baseobj.BaseObj)
73       struct BACKCHANNEL_CTL4args {
74           uint32_t            cb_program;
75           callback_sec_parms4 sec_parms<>;
76       };
77
78
79       Methods defined here:
80       ---------------------
81
82       __init__(self, unpack)
83
84   class BACKCHANNEL_CTL4res(baseobj.BaseObj)
85       struct BACKCHANNEL_CTL4res {
86           nfsstat4 status;
87       };
88
89
90       Methods defined here:
91       ---------------------
92
93       __init__(self, unpack)
94
95   class BIND_CONN_TO_SESSION4args(baseobj.BaseObj)
96       struct BIND_CONN_TO_SESSION4args {
97           sessionid4               sessionid;
98           channel_dir_from_client4 dir;
99           bool                     rdma_mode;
100       };
101
102
103       Methods defined here:
104       ---------------------
105
106       __init__(self, unpack)
107
108   class BIND_CONN_TO_SESSION4res(baseobj.BaseObj)
109       union switch BIND_CONN_TO_SESSION4res (nfsstat4 status) {
110           case const.NFS4_OK:
111               BIND_CONN_TO_SESSION4resok resok;
112       };
113
114
115       Methods defined here:
116       ---------------------
117
118       __init__(self, unpack)
119
120   class BIND_CONN_TO_SESSION4resok(baseobj.BaseObj)
121       struct BIND_CONN_TO_SESSION4resok {
122           sessionid4               sessionid;
123           channel_dir_from_server4 dir;
124           bool                     rdma_mode;
125       };
126
127
128       Methods defined here:
129       ---------------------
130
131       __init__(self, unpack)
132
133   class CB_COMPOUND4args(packet.nfs.nfsbase.NFSbase)
134       struct CB_COMPOUND4args {
135           utf8str_cs    tag;
136           uint32_t      minorversion;
137           uint32_t      callback_ident;
138           nfs_cb_argop4 array<>;
139       };
140
141
142       Methods defined here:
143       ---------------------
144
145       __init__(self, unpack)
146
147   class CB_COMPOUND4res(packet.nfs.nfsbase.NFSbase)
148       struct CB_COMPOUND4res {
149           nfsstat4      status;
150           utf8str_cs    tag;
151           nfs_cb_resop4 array<>;
152       };
153
154
155       Methods defined here:
156       ---------------------
157
158       __init__(self, unpack, minorversion)
159
160   class CB_GETATTR4args(baseobj.BaseObj)
161       struct CB_GETATTR4args {
162           nfs_fh4 fh;
163           bitmap4 request;
164       };
165
166
167       Methods defined here:
168       ---------------------
169
170       __init__(self, unpack)
171
172   class CB_GETATTR4res(baseobj.BaseObj)
173       union switch CB_GETATTR4res (nfsstat4 status) {
174           case const.NFS4_OK:
175               CB_GETATTR4resok resok;
176           default:
177               void;
178       };
179
180
181       Methods defined here:
182       ---------------------
183
184       __init__(self, unpack)
185
186   class CB_GETATTR4resok(baseobj.BaseObj)
187       struct CB_GETATTR4resok {
188           fattr4 attributes;
189       };
190
191
192       Methods defined here:
193       ---------------------
194
195       __init__(self, unpack)
196
197   class CB_ILLEGAL4res(baseobj.BaseObj)
198       struct CB_ILLEGAL4res {
199           nfsstat4 status;
200       };
201
202
203       Methods defined here:
204       ---------------------
205
206       __init__(self, unpack)
207
208   class CB_LAYOUTRECALL4args(baseobj.BaseObj)
209       struct CB_LAYOUTRECALL4args {
210           layouttype4   type;
211           layoutiomode4 iomode;
212           bool          changed;
213           layoutrecall4 recall;
214       };
215
216
217       Methods defined here:
218       ---------------------
219
220       __init__(self, unpack)
221
222   class CB_LAYOUTRECALL4res(baseobj.BaseObj)
223       struct CB_LAYOUTRECALL4res {
224           nfsstat4 status;
225       };
226
227
228       Methods defined here:
229       ---------------------
230
231       __init__(self, unpack)
232
233   class CB_NOTIFY4args(baseobj.BaseObj)
234       struct CB_NOTIFY4args {
235           stateid4 stateid;
236           nfs_fh4  fh;
237           notify4  changes<>;
238       };
239
240
241       Methods defined here:
242       ---------------------
243
244       __init__(self, unpack)
245
246   class CB_NOTIFY4res(baseobj.BaseObj)
247       struct CB_NOTIFY4res {
248           nfsstat4 status;
249       };
250
251
252       Methods defined here:
253       ---------------------
254
255       __init__(self, unpack)
256
257   class CB_NOTIFY_DEVICEID4args(baseobj.BaseObj)
258       struct CB_NOTIFY_DEVICEID4args {
259           notify4 changes<>;
260       };
261
262
263       Methods defined here:
264       ---------------------
265
266       __init__(self, unpack)
267
268   class CB_NOTIFY_DEVICEID4res(baseobj.BaseObj)
269       struct CB_NOTIFY_DEVICEID4res {
270           nfsstat4 status;
271       };
272
273
274       Methods defined here:
275       ---------------------
276
277       __init__(self, unpack)
278
279   class CB_NOTIFY_LOCK4args(baseobj.BaseObj)
280       struct CB_NOTIFY_LOCK4args {
281           nfs_fh4     fh;
282           lock_owner4 lock_owner;
283       };
284
285
286       Methods defined here:
287       ---------------------
288
289       __init__(self, unpack)
290
291   class CB_NOTIFY_LOCK4res(baseobj.BaseObj)
292       struct CB_NOTIFY_LOCK4res {
293           nfsstat4 status;
294       };
295
296
297       Methods defined here:
298       ---------------------
299
300       __init__(self, unpack)
301
302   class CB_OFFLOAD4args(baseobj.BaseObj)
303       struct CB_OFFLOAD4args {
304           nfs_fh4       fh;
305           stateid4      stateid;
306           offload_info4 info;
307       };
308
309
310       Methods defined here:
311       ---------------------
312
313       __init__(self, unpack)
314
315   class CB_OFFLOAD4res(baseobj.BaseObj)
316       struct CB_OFFLOAD4res {
317           nfsstat4 status;
318       };
319
320
321       Methods defined here:
322       ---------------------
323
324       __init__(self, unpack)
325
326   class CB_PUSH_DELEG4args(baseobj.BaseObj)
327       struct CB_PUSH_DELEG4args {
328           nfs_fh4          fh;
329           open_delegation4 delegation;
330       };
331
332
333       Methods defined here:
334       ---------------------
335
336       __init__(self, unpack)
337
338   class CB_PUSH_DELEG4res(baseobj.BaseObj)
339       struct CB_PUSH_DELEG4res {
340           nfsstat4 status;
341       };
342
343
344       Methods defined here:
345       ---------------------
346
347       __init__(self, unpack)
348
349   class CB_RECALL4args(baseobj.BaseObj)
350       struct CB_RECALL4args {
351           stateid4 stateid;
352           bool     truncate;
353           nfs_fh4  fh;
354       };
355
356
357       Methods defined here:
358       ---------------------
359
360       __init__(self, unpack)
361
362   class CB_RECALL4res(baseobj.BaseObj)
363       struct CB_RECALL4res {
364           nfsstat4 status;
365       };
366
367
368       Methods defined here:
369       ---------------------
370
371       __init__(self, unpack)
372
373   class CB_RECALLABLE_OBJ_AVAIL4args(baseobj.BaseObj)
374       CB_RECALLABLE_OBJ_AVAIL4args = class CB_RECALL_ANY4args(baseobj.BaseObj)
375
376   class CB_RECALLABLE_OBJ_AVAIL4res(baseobj.BaseObj)
377       struct CB_RECALLABLE_OBJ_AVAIL4res {
378           nfsstat4 status;
379       };
380
381
382       Methods defined here:
383       ---------------------
384
385       __init__(self, unpack)
386
387   class CB_RECALL_ANY4args(baseobj.BaseObj)
388       struct CB_RECALL_ANY4args {
389           uint32_t objects_to_keep;
390           bitmap4  mask;
391       };
392
393
394       Methods defined here:
395       ---------------------
396
397       __init__(self, unpack)
398
399   class CB_RECALL_ANY4res(baseobj.BaseObj)
400       struct CB_RECALL_ANY4res {
401           nfsstat4 status;
402       };
403
404
405       Methods defined here:
406       ---------------------
407
408       __init__(self, unpack)
409
410   class CB_RECALL_SLOT4args(baseobj.BaseObj)
411       struct CB_RECALL_SLOT4args {
412           slotid4 target_highest_slotid;
413       };
414
415
416       Methods defined here:
417       ---------------------
418
419       __init__(self, unpack)
420
421   class CB_RECALL_SLOT4res(baseobj.BaseObj)
422       struct CB_RECALL_SLOT4res {
423           nfsstat4 status;
424       };
425
426
427       Methods defined here:
428       ---------------------
429
430       __init__(self, unpack)
431
432   class CB_SEQUENCE4args(baseobj.BaseObj)
433       struct CB_SEQUENCE4args {
434           sessionid4           sessionid;
435           sequenceid4          sequenceid;
436           slotid4              slotid;
437           slotid4              highest_slotid;
438           bool                 cachethis;
439           referring_call_list4 referring_call_lists<>;
440       };
441
442
443       Methods defined here:
444       ---------------------
445
446       __init__(self, unpack)
447
448   class CB_SEQUENCE4res(baseobj.BaseObj)
449       union switch CB_SEQUENCE4res (nfsstat4 status) {
450           case const.NFS4_OK:
451               CB_SEQUENCE4resok resok;
452           default:
453               void;
454       };
455
456
457       Methods defined here:
458       ---------------------
459
460       __init__(self, unpack)
461
462   class CB_SEQUENCE4resok(baseobj.BaseObj)
463       struct CB_SEQUENCE4resok {
464           sessionid4  sessionid;
465           sequenceid4 sequenceid;
466           slotid4     slotid;
467           slotid4     highest_slotid;
468           slotid4     target_highest_slotid;
469       };
470
471
472       Methods defined here:
473       ---------------------
474
475       __init__(self, unpack)
476
477   class CB_WANTS_CANCELLED4args(baseobj.BaseObj)
478       struct CB_WANTS_CANCELLED4args {
479           bool contended;
480           bool resourced;
481       };
482
483
484       Methods defined here:
485       ---------------------
486
487       __init__(self, unpack)
488
489   class CB_WANTS_CANCELLED4res(baseobj.BaseObj)
490       struct CB_WANTS_CANCELLED4res {
491           nfsstat4 status;
492       };
493
494
495       Methods defined here:
496       ---------------------
497
498       __init__(self, unpack)
499
500   class CLONE4args(baseobj.BaseObj)
501       struct CLONE4args {
502           /*
503            * SAVED_FH: source file
504            * CURRENT_FH: destination file
505            */
506           stateid4 src_stateid;
507           stateid4 dst_stateid;
508           offset4  src_offset;
509           offset4  dst_offset;
510           length4  count;
511       };
512
513
514       Methods defined here:
515       ---------------------
516
517       __init__(self, unpack)
518
519   class CLONE4res(baseobj.BaseObj)
520       struct CLONE4res {
521           nfsstat4 status;
522       };
523
524
525       Methods defined here:
526       ---------------------
527
528       __init__(self, unpack)
529
530   class CLOSE4args(baseobj.BaseObj)
531       struct CLOSE4args {
532           /* CURRENT_FH: object */
533           seqid4   seqid;
534           stateid4 stateid;
535       };
536
537
538       Methods defined here:
539       ---------------------
540
541       __init__(self, unpack)
542
543   class CLOSE4res(baseobj.BaseObj)
544       union switch CLOSE4res (nfsstat4 status) {
545           case const.NFS4_OK:
546               stateid4 stateid;
547           default:
548               void;
549       };
550
551
552       Methods defined here:
553       ---------------------
554
555       __init__(self, unpack)
556
557   class COMMIT4args(baseobj.BaseObj)
558       struct COMMIT4args {
559           /* CURRENT_FH: file */
560           offset4 offset;
561           count4  count;
562       };
563
564
565       Methods defined here:
566       ---------------------
567
568       __init__(self, unpack)
569
570   class COMMIT4res(baseobj.BaseObj)
571       union switch COMMIT4res (nfsstat4 status) {
572           case const.NFS4_OK:
573               COMMIT4resok resok;
574           default:
575               void;
576       };
577
578
579       Methods defined here:
580       ---------------------
581
582       __init__(self, unpack)
583
584   class COMMIT4resok(baseobj.BaseObj)
585       struct COMMIT4resok {
586           verifier4 verifier;
587       };
588
589
590       Methods defined here:
591       ---------------------
592
593       __init__(self, unpack)
594
595   class COMPOUND4args(packet.nfs.nfsbase.NFSbase)
596       struct COMPOUND4args {
597           utf8str_cs tag;
598           uint32_t   minorversion;
599           nfs_argop4 array<>;
600       };
601
602
603       Methods defined here:
604       ---------------------
605
606       __init__(self, unpack)
607
608   class COMPOUND4res(packet.nfs.nfsbase.NFSbase)
609       struct COMPOUND4res {
610           nfsstat4   status;
611           utf8str_cs tag;
612           nfs_resop4 array<>;
613       };
614
615
616       Methods defined here:
617       ---------------------
618
619       __init__(self, unpack, minorversion)
620
621   class COPY4args(baseobj.BaseObj)
622       struct COPY4args {
623           /*
624            * SAVED_FH: source file
625            * CURRENT_FH: destination file
626            */
627           stateid4 src_stateid;
628           stateid4 dst_stateid;
629           offset4  src_offset;
630           offset4  dst_offset;
631           length4  count;
632           bool     consecutive;
633           bool     synchronous;
634           netloc4  src_servers<>;
635       };
636
637
638       Methods defined here:
639       ---------------------
640
641       __init__(self, unpack)
642
643   class COPY4res(baseobj.BaseObj)
644       union switch COPY4res (nfsstat4 status) {
645           case const.NFS4_OK:
646               COPY4resok resok;
647           case const.NFS4ERR_OFFLOAD_NO_REQS:
648               copy_requirements4 requirements;
649           default:
650               void;
651       };
652
653
654       Methods defined here:
655       ---------------------
656
657       __init__(self, unpack)
658
659   class COPY4resok(baseobj.BaseObj)
660       struct COPY4resok {
661           write_response4    response;
662           copy_requirements4 requirements;
663       };
664
665
666       Methods defined here:
667       ---------------------
668
669       __init__(self, unpack)
670
671   class COPY_NOTIFY4args(baseobj.BaseObj)
672       struct COPY_NOTIFY4args {
673           /* CURRENT_FH: source file */
674           stateid4 stateid;
675           netloc4  dst_server;
676       };
677
678
679       Methods defined here:
680       ---------------------
681
682       __init__(self, unpack)
683
684   class COPY_NOTIFY4res(baseobj.BaseObj)
685       union switch COPY_NOTIFY4res (nfsstat4 status) {
686           case const.NFS4_OK:
687               COPY_NOTIFY4resok resok;
688           default:
689               void;
690       };
691
692
693       Methods defined here:
694       ---------------------
695
696       __init__(self, unpack)
697
698   class COPY_NOTIFY4resok(baseobj.BaseObj)
699       struct COPY_NOTIFY4resok {
700           nfstime4 lease_time;
701           stateid4 stateid;
702           netloc4  src_servers<>;
703       };
704
705
706       Methods defined here:
707       ---------------------
708
709       __init__(self, unpack)
710
711   class CREATE4args(baseobj.BaseObj)
712       struct CREATE4args {
713           /* CURRENT_FH: directory for creation */
714           createtype4 type;
715           component4  name;
716           fattr4      attributes;
717       };
718
719
720       Methods defined here:
721       ---------------------
722
723       __init__(self, unpack)
724
725   class CREATE4res(baseobj.BaseObj)
726       union switch CREATE4res (nfsstat4 status) {
727           case const.NFS4_OK:
728               /* new CURRENTFH: created object */
729               CREATE4resok resok;
730           default:
731               void;
732       };
733
734
735       Methods defined here:
736       ---------------------
737
738       __init__(self, unpack)
739
740   class CREATE4resok(baseobj.BaseObj)
741       struct CREATE4resok {
742           change_info4 cinfo;
743           bitmap4      attrset;  /* attributes set */
744       };
745
746
747       Methods defined here:
748       ---------------------
749
750       __init__(self, unpack)
751
752   class CREATE_SESSION4args(baseobj.BaseObj)
753       struct CREATE_SESSION4args {
754           clientid4           clientid;
755           sequenceid4         sequenceid;
756           uint32_t            flags;
757           channel_attrs4      fore_chan_attrs;
758           channel_attrs4      back_chan_attrs;
759           uint32_t            cb_program;
760           callback_sec_parms4 sec_parms<>;
761       };
762
763
764       Methods defined here:
765       ---------------------
766
767       __init__(self, unpack)
768
769   class CREATE_SESSION4res(baseobj.BaseObj)
770       union switch CREATE_SESSION4res (nfsstat4 status) {
771           case const.NFS4_OK:
772               CREATE_SESSION4resok resok;
773           default:
774               void;
775       };
776
777
778       Methods defined here:
779       ---------------------
780
781       __init__(self, unpack)
782
783   class CREATE_SESSION4resok(baseobj.BaseObj)
784       struct CREATE_SESSION4resok {
785           sessionid4     sessionid;
786           sequenceid4    sequenceid;
787           uint32_t       flags;
788           channel_attrs4 fore_chan_attrs;
789           channel_attrs4 back_chan_attrs;
790       };
791
792
793       Methods defined here:
794       ---------------------
795
796       __init__(self, unpack)
797
798   class DEALLOCATE4args(baseobj.BaseObj)
799       struct DEALLOCATE4args {
800           /* CURRENT_FH: file */
801           stateid4 stateid;
802           offset4  offset;
803           length4  length;
804       };
805
806
807       Methods defined here:
808       ---------------------
809
810       __init__(self, unpack)
811
812   class DEALLOCATE4res(baseobj.BaseObj)
813       struct DEALLOCATE4res {
814           nfsstat4 status;
815       };
816
817
818       Methods defined here:
819       ---------------------
820
821       __init__(self, unpack)
822
823   class DELEGPURGE4args(baseobj.BaseObj)
824       struct DELEGPURGE4args {
825           clientid4 clientid;
826       };
827
828
829       Methods defined here:
830       ---------------------
831
832       __init__(self, unpack)
833
834   class DELEGPURGE4res(baseobj.BaseObj)
835       struct DELEGPURGE4res {
836           nfsstat4 status;
837       };
838
839
840       Methods defined here:
841       ---------------------
842
843       __init__(self, unpack)
844
845   class DELEGRETURN4args(baseobj.BaseObj)
846       struct DELEGRETURN4args {
847           /* CURRENT_FH: delegated object */
848           stateid4 stateid;
849       };
850
851
852       Methods defined here:
853       ---------------------
854
855       __init__(self, unpack)
856
857   class DELEGRETURN4res(baseobj.BaseObj)
858       struct DELEGRETURN4res {
859           nfsstat4 status;
860       };
861
862
863       Methods defined here:
864       ---------------------
865
866       __init__(self, unpack)
867
868   class DESTROY_CLIENTID4args(baseobj.BaseObj)
869       struct DESTROY_CLIENTID4args {
870           clientid4 clientid;
871       };
872
873
874       Methods defined here:
875       ---------------------
876
877       __init__(self, unpack)
878
879   class DESTROY_CLIENTID4res(baseobj.BaseObj)
880       struct DESTROY_CLIENTID4res {
881           nfsstat4 status;
882       };
883
884
885       Methods defined here:
886       ---------------------
887
888       __init__(self, unpack)
889
890   class DESTROY_SESSION4args(baseobj.BaseObj)
891       struct DESTROY_SESSION4args {
892           sessionid4 sessionid;
893       };
894
895
896       Methods defined here:
897       ---------------------
898
899       __init__(self, unpack)
900
901   class DESTROY_SESSION4res(baseobj.BaseObj)
902       struct DESTROY_SESSION4res {
903           nfsstat4 status;
904       };
905
906
907       Methods defined here:
908       ---------------------
909
910       __init__(self, unpack)
911
912   class EXCHANGE_ID4args(baseobj.BaseObj)
913       struct EXCHANGE_ID4args {
914           client_owner4    clientowner;
915           uint32_t         flags;
916           state_protect4_a state_protect;
917           nfs_impl_id4     client_impl_id<1>;
918       };
919
920
921       Methods defined here:
922       ---------------------
923
924       __init__(self, unpack)
925
926   class EXCHANGE_ID4res(baseobj.BaseObj)
927       union switch EXCHANGE_ID4res (nfsstat4 status) {
928           case const.NFS4_OK:
929               EXCHANGE_ID4resok resok;
930           default:
931               void;
932       };
933
934
935       Methods defined here:
936       ---------------------
937
938       __init__(self, unpack)
939
940   class EXCHANGE_ID4resok(baseobj.BaseObj)
941       struct EXCHANGE_ID4resok {
942           clientid4        clientid;
943           sequenceid4      sequenceid;
944           uint32_t         flags;
945           state_protect4_r state_protect;
946           server_owner4    server_owner;
947           opaque           server_scope<NFS4_OPAQUE_LIMIT>;
948           nfs_impl_id4     server_impl_id<1>;
949       };
950
951
952       Methods defined here:
953       ---------------------
954
955       __init__(self, unpack)
956
957   class FREE_STATEID4args(baseobj.BaseObj)
958       struct FREE_STATEID4args {
959           stateid4 stateid;
960       };
961
962
963       Methods defined here:
964       ---------------------
965
966       __init__(self, unpack)
967
968   class FREE_STATEID4res(baseobj.BaseObj)
969       struct FREE_STATEID4res {
970           nfsstat4 status;
971       };
972
973
974       Methods defined here:
975       ---------------------
976
977       __init__(self, unpack)
978
979   class GETATTR4args(baseobj.BaseObj)
980       struct GETATTR4args {
981           /* CURRENT_FH: object */
982           bitmap4 request;
983       };
984
985
986       Methods defined here:
987       ---------------------
988
989       __init__(self, unpack)
990
991   class GETATTR4res(baseobj.BaseObj)
992       union switch GETATTR4res (nfsstat4 status) {
993           case const.NFS4_OK:
994               GETATTR4resok resok;
995           default:
996               void;
997       };
998
999
1000       Methods defined here:
1001       ---------------------
1002
1003       __init__(self, unpack)
1004
1005   class GETATTR4resok(baseobj.BaseObj)
1006       struct GETATTR4resok {
1007           fattr4 attributes;
1008       };
1009
1010
1011       Methods defined here:
1012       ---------------------
1013
1014       __init__(self, unpack)
1015
1016   class GETDEVICEINFO4args(baseobj.BaseObj)
1017       struct GETDEVICEINFO4args {
1018           deviceid4   deviceid;
1019           layouttype4 type;
1020           count4      maxcount;
1021           bitmap4     notification;
1022       };
1023
1024
1025       Methods defined here:
1026       ---------------------
1027
1028       __init__(self, unpack)
1029
1030   class GETDEVICEINFO4res(baseobj.BaseObj)
1031       union switch GETDEVICEINFO4res (nfsstat4 status) {
1032           case const.NFS4_OK:
1033               GETDEVICEINFO4resok resok;
1034           case const.NFS4ERR_TOOSMALL:
1035               count4 mincount;
1036           default:
1037               void;
1038       };
1039
1040
1041       Methods defined here:
1042       ---------------------
1043
1044       __init__(self, unpack)
1045
1046   class GETDEVICEINFO4resok(baseobj.BaseObj)
1047       struct GETDEVICEINFO4resok {
1048           device_addr4 device_addr;
1049           bitmap4      notification;
1050       };
1051
1052
1053       Methods defined here:
1054       ---------------------
1055
1056       __init__(self, unpack)
1057
1058   class GETDEVICELIST4args(baseobj.BaseObj)
1059       struct GETDEVICELIST4args {
1060           /* CURRENT_FH: object belonging to the file system */
1061           layouttype4 type;
1062           /* number of deviceIDs to return */
1063           count4      maxdevices;
1064           nfs_cookie4 cookie;
1065           verifier4   verifier;
1066       };
1067
1068
1069       Methods defined here:
1070       ---------------------
1071
1072       __init__(self, unpack)
1073
1074   class GETDEVICELIST4res(baseobj.BaseObj)
1075       union switch GETDEVICELIST4res (nfsstat4 status) {
1076           case const.NFS4_OK:
1077               GETDEVICELIST4resok resok;
1078           default:
1079               void;
1080       };
1081
1082
1083       Methods defined here:
1084       ---------------------
1085
1086       __init__(self, unpack)
1087
1088   class GETDEVICELIST4resok(baseobj.BaseObj)
1089       struct GETDEVICELIST4resok {
1090           nfs_cookie4 cookie;
1091           verifier4   verifier;
1092           deviceid4   deviceid_list<>;
1093           bool        eof;
1094       };
1095
1096
1097       Methods defined here:
1098       ---------------------
1099
1100       __init__(self, unpack)
1101
1102   class GETFH4res(baseobj.BaseObj)
1103       union switch GETFH4res (nfsstat4 status) {
1104           case const.NFS4_OK:
1105               GETFH4resok resok;
1106           default:
1107               void;
1108       };
1109
1110
1111       Methods defined here:
1112       ---------------------
1113
1114       __init__(self, unpack)
1115
1116   class GETFH4resok(baseobj.BaseObj)
1117       struct GETFH4resok {
1118           nfs_fh4 fh;
1119       };
1120
1121
1122       Methods defined here:
1123       ---------------------
1124
1125       __init__(self, unpack)
1126
1127   class GET_DIR_DELEGATION4args(baseobj.BaseObj)
1128       struct GET_DIR_DELEGATION4args {
1129           /* CURRENT_FH: delegated directory */
1130           bool         deleg_avail;
1131           bitmap4      notification;
1132           attr_notice4 child_attr_delay;
1133           attr_notice4 attr_delay;
1134           bitmap4      child_attributes;
1135           bitmap4      attributes;
1136       };
1137
1138
1139       Methods defined here:
1140       ---------------------
1141
1142       __init__(self, unpack)
1143
1144   class GET_DIR_DELEGATION4res(baseobj.BaseObj)
1145       union switch GET_DIR_DELEGATION4res (nfsstat4 status) {
1146           case const.NFS4_OK:
1147               GET_DIR_DELEGATION4res_non_fatal resok;
1148           default:
1149               void;
1150       };
1151
1152
1153       Methods defined here:
1154       ---------------------
1155
1156       __init__(self, unpack)
1157
1158   class GET_DIR_DELEGATION4res_non_fatal(baseobj.BaseObj)
1159       union switch GET_DIR_DELEGATION4res_non_fatal (gddrnf4_status status) {
1160           case const.GDD4_OK:
1161               GET_DIR_DELEGATION4resok resok;
1162           case const.GDD4_UNAVAIL:
1163               bool signal;
1164       };
1165
1166
1167       Methods defined here:
1168       ---------------------
1169
1170       __init__(self, unpack)
1171
1172   class GET_DIR_DELEGATION4resok(baseobj.BaseObj)
1173       struct GET_DIR_DELEGATION4resok {
1174           verifier4 verifier;
1175           /* Stateid for get_dir_delegation */
1176           stateid4  stateid;
1177           /* Which notifications can the server support */
1178           bitmap4   notification;
1179           bitmap4   child_attributes;
1180           bitmap4   attributes;
1181       };
1182
1183
1184       Methods defined here:
1185       ---------------------
1186
1187       __init__(self, unpack)
1188
1189   class ILLEGAL4res(baseobj.BaseObj)
1190       struct ILLEGAL4res {
1191           nfsstat4 status;
1192       };
1193
1194
1195       Methods defined here:
1196       ---------------------
1197
1198       __init__(self, unpack)
1199
1200   class IO_ADVISE4args(baseobj.BaseObj)
1201       struct IO_ADVISE4args {
1202           /* CURRENT_FH: file */
1203           stateid4 stateid;
1204           offset4  offset;
1205           length4  count;
1206           bitmap4  hints;
1207       };
1208
1209
1210       Methods defined here:
1211       ---------------------
1212
1213       __init__(self, unpack)
1214
1215   class IO_ADVISE4res(baseobj.BaseObj)
1216       union switch IO_ADVISE4res (nfsstat4 status) {
1217           case const.NFS4_OK:
1218               IO_ADVISE4resok resok;
1219           default:
1220               void;
1221       };
1222
1223
1224       Methods defined here:
1225       ---------------------
1226
1227       __init__(self, unpack)
1228
1229   class IO_ADVISE4resok(baseobj.BaseObj)
1230       struct IO_ADVISE4resok {
1231           bitmap4 hints;
1232       };
1233
1234
1235       Methods defined here:
1236       ---------------------
1237
1238       __init__(self, unpack)
1239
1240   class IO_ADVISE_type4(packet.utils.Enum)
1241       enum IO_ADVISE_type4
1242
1243
1244   class LAYOUTCOMMIT4args(baseobj.BaseObj)
1245       struct LAYOUTCOMMIT4args {
1246           /* CURRENT_FH: file */
1247           offset4       offset;
1248           length4       length;
1249           bool          reclaim;
1250           stateid4      stateid;
1251           newoffset4    last_write_offset;
1252           newtime4      time_modify;
1253           layoutupdate4 layoutupdate;
1254       };
1255
1256
1257       Methods defined here:
1258       ---------------------
1259
1260       __init__(self, unpack)
1261
1262   class LAYOUTCOMMIT4res(baseobj.BaseObj)
1263       union switch LAYOUTCOMMIT4res (nfsstat4 status) {
1264           case const.NFS4_OK:
1265               LAYOUTCOMMIT4resok resok;
1266           default:
1267               void;
1268       };
1269
1270
1271       Methods defined here:
1272       ---------------------
1273
1274       __init__(self, unpack)
1275
1276   class LAYOUTCOMMIT4resok(baseobj.BaseObj)
1277       struct LAYOUTCOMMIT4resok {
1278           newsize4 newsize;
1279       };
1280
1281
1282       Methods defined here:
1283       ---------------------
1284
1285       __init__(self, unpack)
1286
1287   class LAYOUTERROR4args(baseobj.BaseObj)
1288       struct LAYOUTERROR4args {
1289           /* CURRENT_FH: file */
1290           offset4       offset;
1291           length4       length;
1292           stateid4      stateid;
1293           device_error4 errors<>;
1294       };
1295
1296
1297       Methods defined here:
1298       ---------------------
1299
1300       __init__(self, unpack)
1301
1302   class LAYOUTERROR4res(baseobj.BaseObj)
1303       struct LAYOUTERROR4res {
1304           nfsstat4 status;
1305       };
1306
1307
1308       Methods defined here:
1309       ---------------------
1310
1311       __init__(self, unpack)
1312
1313   class LAYOUTGET4args(baseobj.BaseObj)
1314       struct LAYOUTGET4args {
1315           /* CURRENT_FH: file */
1316           bool          avail;
1317           layouttype4   type;
1318           layoutiomode4 iomode;
1319           offset4       offset;
1320           length4       length;
1321           length4       minlength;
1322           stateid4      stateid;
1323           count4        maxcount;
1324       };
1325
1326
1327       Methods defined here:
1328       ---------------------
1329
1330       __init__(self, unpack)
1331
1332   class LAYOUTGET4res(baseobj.BaseObj)
1333       union switch LAYOUTGET4res (nfsstat4 status) {
1334           case const.NFS4_OK:
1335               LAYOUTGET4resok resok;
1336           case const.NFS4ERR_LAYOUTTRYLATER:
1337               /* Server will signal layout availability */
1338               bool signal;
1339           default:
1340               void;
1341       };
1342
1343
1344       Methods defined here:
1345       ---------------------
1346
1347       __init__(self, unpack)
1348
1349   class LAYOUTGET4resok(baseobj.BaseObj)
1350       struct LAYOUTGET4resok {
1351           bool     return_on_close;
1352           stateid4 stateid;
1353           layout4  layout<>;
1354       };
1355
1356
1357       Methods defined here:
1358       ---------------------
1359
1360       __init__(self, unpack)
1361
1362   class LAYOUTRETURN4args(baseobj.BaseObj)
1363       struct LAYOUTRETURN4args {
1364           /* CURRENT_FH: file */
1365           bool          reclaim;
1366           layouttype4   type;
1367           layoutiomode4 iomode;
1368           layoutreturn4 layoutreturn;
1369       };
1370
1371
1372       Methods defined here:
1373       ---------------------
1374
1375       __init__(self, unpack)
1376
1377   class LAYOUTRETURN4res(baseobj.BaseObj)
1378       union switch LAYOUTRETURN4res (nfsstat4 status) {
1379           case const.NFS4_OK:
1380               layoutreturn_stateid stateid;
1381           default:
1382               void;
1383       };
1384
1385
1386       Methods defined here:
1387       ---------------------
1388
1389       __init__(self, unpack)
1390
1391   class LAYOUTSTATS4args(baseobj.BaseObj)
1392       struct LAYOUTSTATS4args {
1393           /* CURRENT_FH: file */
1394           offset4       offset;
1395           length4       length;
1396           stateid4      stateid;
1397           io_info4      read;
1398           io_info4      write;
1399           deviceid4     deviceid;
1400           layoutupdate4 layoutupdate;
1401       };
1402
1403
1404       Methods defined here:
1405       ---------------------
1406
1407       __init__(self, unpack)
1408
1409   class LAYOUTSTATS4res(baseobj.BaseObj)
1410       struct LAYOUTSTATS4res {
1411           nfsstat4 status;
1412       };
1413
1414
1415       Methods defined here:
1416       ---------------------
1417
1418       __init__(self, unpack)
1419
1420   class LINK4args(baseobj.BaseObj)
1421       struct LINK4args {
1422           /*
1423            * SAVED_FH: source object
1424            * CURRENT_FH: target directory
1425            */
1426           component4 name;
1427       };
1428
1429
1430       Methods defined here:
1431       ---------------------
1432
1433       __init__(self, unpack)
1434
1435   class LINK4res(baseobj.BaseObj)
1436       union switch LINK4res (nfsstat4 status) {
1437           case const.NFS4_OK:
1438               LINK4resok resok;
1439           default:
1440               void;
1441       };
1442
1443
1444       Methods defined here:
1445       ---------------------
1446
1447       __init__(self, unpack)
1448
1449   class LINK4resok(baseobj.BaseObj)
1450       struct LINK4resok {
1451           change_info4 cinfo;
1452       };
1453
1454
1455       Methods defined here:
1456       ---------------------
1457
1458       __init__(self, unpack)
1459
1460   class LOCK4args(baseobj.BaseObj)
1461       struct LOCK4args {
1462           /* CURRENT_FH: file */
1463           nfs_lock_type4 locktype;
1464           bool           reclaim;
1465           offset4        offset;
1466           length4        length;
1467           locker4        locker;
1468       };
1469
1470
1471       Methods defined here:
1472       ---------------------
1473
1474       __init__(self, unpack)
1475
1476   class LOCK4denied(baseobj.BaseObj)
1477       struct LOCK4denied {
1478           offset4        offset;
1479           length4        length;
1480           nfs_lock_type4 locktype;
1481           lock_owner4    owner;
1482       };
1483
1484
1485       Methods defined here:
1486       ---------------------
1487
1488       __init__(self, unpack)
1489
1490   class LOCK4res(baseobj.BaseObj)
1491       union switch LOCK4res (nfsstat4 status) {
1492           case const.NFS4_OK:
1493               LOCK4resok resok;
1494           case const.NFS4ERR_DENIED:
1495               LOCK4denied denied;
1496           default:
1497               void;
1498       };
1499
1500
1501       Methods defined here:
1502       ---------------------
1503
1504       __init__(self, unpack)
1505
1506   class LOCK4resok(baseobj.BaseObj)
1507       struct LOCK4resok {
1508           stateid4 stateid;
1509       };
1510
1511
1512       Methods defined here:
1513       ---------------------
1514
1515       __init__(self, unpack)
1516
1517   class LOCKT4args(baseobj.BaseObj)
1518       struct LOCKT4args {
1519           /* CURRENT_FH: file */
1520           nfs_lock_type4 locktype;
1521           offset4        offset;
1522           length4        length;
1523           lock_owner4    owner;
1524       };
1525
1526
1527       Methods defined here:
1528       ---------------------
1529
1530       __init__(self, unpack)
1531
1532   class LOCKT4res(baseobj.BaseObj)
1533       union switch LOCKT4res (nfsstat4 status) {
1534           case const.NFS4ERR_DENIED:
1535               LOCK4denied denied;
1536           case const.NFS4_OK:
1537               void;
1538           default:
1539               void;
1540       };
1541
1542
1543       Methods defined here:
1544       ---------------------
1545
1546       __init__(self, unpack)
1547
1548   class LOCKU4args(baseobj.BaseObj)
1549       struct LOCKU4args {
1550           /* CURRENT_FH: file */
1551           nfs_lock_type4 locktype;
1552           seqid4         seqid;
1553           stateid4       stateid;
1554           offset4        offset;
1555           length4        length;
1556       };
1557
1558
1559       Methods defined here:
1560       ---------------------
1561
1562       __init__(self, unpack)
1563
1564   class LOCKU4res(baseobj.BaseObj)
1565       union switch LOCKU4res (nfsstat4 status) {
1566           case const.NFS4_OK:
1567               stateid4 stateid;
1568           default:
1569               void;
1570       };
1571
1572
1573       Methods defined here:
1574       ---------------------
1575
1576       __init__(self, unpack)
1577
1578   class LOOKUP4args(baseobj.BaseObj)
1579       struct LOOKUP4args {
1580           /* CURRENT_FH: directory */
1581           component4 name;
1582       };
1583
1584
1585       Methods defined here:
1586       ---------------------
1587
1588       __init__(self, unpack)
1589
1590   class LOOKUP4res(baseobj.BaseObj)
1591       struct LOOKUP4res {
1592           /* New CURRENT_FH: object */
1593           nfsstat4 status;
1594       };
1595
1596
1597       Methods defined here:
1598       ---------------------
1599
1600       __init__(self, unpack)
1601
1602   class LOOKUPP4res(baseobj.BaseObj)
1603       struct LOOKUPP4res {
1604           /* new CURRENT_FH: parent directory */
1605           nfsstat4 status;
1606       };
1607
1608
1609       Methods defined here:
1610       ---------------------
1611
1612       __init__(self, unpack)
1613
1614   class NVERIFY4args(baseobj.BaseObj)
1615       struct NVERIFY4args {
1616           /* CURRENT_FH: object */
1617           fattr4 attributes;
1618       };
1619
1620
1621       Methods defined here:
1622       ---------------------
1623
1624       __init__(self, unpack)
1625
1626   class NVERIFY4res(baseobj.BaseObj)
1627       struct NVERIFY4res {
1628           nfsstat4 status;
1629       };
1630
1631
1632       Methods defined here:
1633       ---------------------
1634
1635       __init__(self, unpack)
1636
1637   class OFFLOAD_CANCEL4args(baseobj.BaseObj)
1638       struct OFFLOAD_CANCEL4args {
1639           /* CURRENT_FH: file to cancel */
1640           stateid4 stateid;
1641       };
1642
1643
1644       Methods defined here:
1645       ---------------------
1646
1647       __init__(self, unpack)
1648
1649   class OFFLOAD_CANCEL4res(baseobj.BaseObj)
1650       struct OFFLOAD_CANCEL4res {
1651           nfsstat4 status;
1652       };
1653
1654
1655       Methods defined here:
1656       ---------------------
1657
1658       __init__(self, unpack)
1659
1660   class OFFLOAD_STATUS4args(baseobj.BaseObj)
1661       struct OFFLOAD_STATUS4args {
1662           /* CURRENT_FH: destination file */
1663           stateid4 stateid;
1664       };
1665
1666
1667       Methods defined here:
1668       ---------------------
1669
1670       __init__(self, unpack)
1671
1672   class OFFLOAD_STATUS4res(baseobj.BaseObj)
1673       union switch OFFLOAD_STATUS4res (nfsstat4 status) {
1674           case const.NFS4_OK:
1675               OFFLOAD_STATUS4resok resok;
1676           default:
1677               void;
1678       };
1679
1680
1681       Methods defined here:
1682       ---------------------
1683
1684       __init__(self, unpack)
1685
1686   class OFFLOAD_STATUS4resok(baseobj.BaseObj)
1687       struct OFFLOAD_STATUS4resok {
1688           length4  count;
1689           nfsstat4 complete<1>;
1690       };
1691
1692
1693       Methods defined here:
1694       ---------------------
1695
1696       __init__(self, unpack)
1697
1698   class OPEN4args(baseobj.BaseObj)
1699       struct OPEN4args {
1700           seqid4      seqid;
1701           uint32_t    access;
1702           uint32_t    deny;
1703           open_owner4 owner;
1704           openflag4   openhow;
1705           open_claim4 claim;
1706       };
1707
1708
1709       Methods defined here:
1710       ---------------------
1711
1712       __init__(self, unpack)
1713
1714   class OPEN4res(baseobj.BaseObj)
1715       union switch OPEN4res (nfsstat4 status) {
1716           case const.NFS4_OK:
1717               /* New CURRENT_FH: opened file */
1718               OPEN4resok resok;
1719           default:
1720               void;
1721       };
1722
1723
1724       Methods defined here:
1725       ---------------------
1726
1727       __init__(self, unpack)
1728
1729   class OPEN4resok(baseobj.BaseObj)
1730       struct OPEN4resok {
1731           stateid4         stateid;     /* Stateid for open */
1732           change_info4     cinfo;       /* Directory Change Info */
1733           uint32_t         rflags;      /* Result flags */
1734           bitmap4          attrset;     /* attribute set for create */
1735           open_delegation4 delegation;  /* Info on any open delegation */
1736       };
1737
1738
1739       Methods defined here:
1740       ---------------------
1741
1742       __init__(self, unpack)
1743
1744   class OPENATTR4args(baseobj.BaseObj)
1745       struct OPENATTR4args {
1746           /* CURRENT_FH: object */
1747           bool createdir;
1748       };
1749
1750
1751       Methods defined here:
1752       ---------------------
1753
1754       __init__(self, unpack)
1755
1756   class OPENATTR4res(baseobj.BaseObj)
1757       struct OPENATTR4res {
1758           /*
1759            * If status is NFS4_OK,
1760            *   new CURRENT_FH: named attribute directory
1761            */
1762           nfsstat4 status;
1763       };
1764
1765
1766       Methods defined here:
1767       ---------------------
1768
1769       __init__(self, unpack)
1770
1771   class OPEN_CONFIRM4args(baseobj.BaseObj)
1772       struct OPEN_CONFIRM4args {
1773           /* CURRENT_FH: opened file */
1774           stateid4 stateid;
1775           seqid4   seqid;
1776       };
1777
1778
1779       Methods defined here:
1780       ---------------------
1781
1782       __init__(self, unpack)
1783
1784   class OPEN_CONFIRM4res(baseobj.BaseObj)
1785       union switch OPEN_CONFIRM4res (nfsstat4 status) {
1786           case const.NFS4_OK:
1787               OPEN_CONFIRM4resok resok;
1788           default:
1789               void;
1790       };
1791
1792
1793       Methods defined here:
1794       ---------------------
1795
1796       __init__(self, unpack)
1797
1798   class OPEN_CONFIRM4resok(baseobj.BaseObj)
1799       struct OPEN_CONFIRM4resok {
1800           stateid4 stateid;
1801       };
1802
1803
1804       Methods defined here:
1805       ---------------------
1806
1807       __init__(self, unpack)
1808
1809   class OPEN_DOWNGRADE4args(baseobj.BaseObj)
1810       struct OPEN_DOWNGRADE4args {
1811           /* CURRENT_FH: opened file */
1812           stateid4 stateid;
1813           seqid4   seqid;
1814           uint32_t access;
1815           uint32_t deny;
1816       };
1817
1818
1819       Methods defined here:
1820       ---------------------
1821
1822       __init__(self, unpack)
1823
1824   class OPEN_DOWNGRADE4res(baseobj.BaseObj)
1825       union switch OPEN_DOWNGRADE4res (nfsstat4 status) {
1826           case const.NFS4_OK:
1827               OPEN_DOWNGRADE4resok resok;
1828           default:
1829               void;
1830       };
1831
1832
1833       Methods defined here:
1834       ---------------------
1835
1836       __init__(self, unpack)
1837
1838   class OPEN_DOWNGRADE4resok(baseobj.BaseObj)
1839       struct OPEN_DOWNGRADE4resok {
1840           stateid4 stateid;
1841       };
1842
1843
1844       Methods defined here:
1845       ---------------------
1846
1847       __init__(self, unpack)
1848
1849   class PUTFH4args(baseobj.BaseObj)
1850       struct PUTFH4args {
1851           nfs_fh4 fh;
1852       };
1853
1854
1855       Methods defined here:
1856       ---------------------
1857
1858       __init__(self, unpack)
1859
1860   class PUTFH4res(baseobj.BaseObj)
1861       struct PUTFH4res {
1862           /*
1863            * If status is NFS4_OK,
1864            *    new CURRENT_FH: argument to PUTFH
1865            */
1866           nfsstat4 status;
1867       };
1868
1869
1870       Methods defined here:
1871       ---------------------
1872
1873       __init__(self, unpack)
1874
1875   class PUTPUBFH4res(baseobj.BaseObj)
1876       struct PUTPUBFH4res {
1877           /*
1878            * If status is NFS4_OK,
1879            *   new CURRENT_FH: public fh
1880            */
1881           nfsstat4 status;
1882       };
1883
1884
1885       Methods defined here:
1886       ---------------------
1887
1888       __init__(self, unpack)
1889
1890   class PUTROOTFH4res(baseobj.BaseObj)
1891       struct PUTROOTFH4res {
1892           /*
1893            * If status is NFS4_OK,
1894            *   new CURRENT_FH: root fh
1895            */
1896           nfsstat4 status;
1897       };
1898
1899
1900       Methods defined here:
1901       ---------------------
1902
1903       __init__(self, unpack)
1904
1905   class READ4args(baseobj.BaseObj)
1906       struct READ4args {
1907           /* CURRENT_FH: file */
1908           stateid4 stateid;
1909           offset4  offset;
1910           count4   count;
1911       };
1912
1913
1914       Methods defined here:
1915       ---------------------
1916
1917       __init__(self, unpack)
1918
1919   class READ4res(baseobj.BaseObj)
1920       union switch READ4res (nfsstat4 status) {
1921           case const.NFS4_OK:
1922               READ4resok resok;
1923           default:
1924               void;
1925       };
1926
1927
1928       Methods defined here:
1929       ---------------------
1930
1931       __init__(self, unpack)
1932
1933   class READ4resok(baseobj.BaseObj)
1934       struct READ4resok {
1935           bool   eof;
1936           opaque data<>;
1937       };
1938
1939
1940       Methods defined here:
1941       ---------------------
1942
1943       __init__(self, unpack)
1944
1945   class READDIR4args(baseobj.BaseObj)
1946       struct READDIR4args {
1947           /* CURRENT_FH: directory */
1948           nfs_cookie4 cookie;
1949           verifier4   verifier;
1950           count4      dircount;
1951           count4      maxcount;
1952           bitmap4     request;
1953       };
1954
1955
1956       Methods defined here:
1957       ---------------------
1958
1959       __init__(self, unpack)
1960
1961   class READDIR4res(baseobj.BaseObj)
1962       union switch READDIR4res (nfsstat4 status) {
1963           case const.NFS4_OK:
1964               READDIR4resok resok;
1965           default:
1966               void;
1967       };
1968
1969
1970       Methods defined here:
1971       ---------------------
1972
1973       __init__(self, unpack)
1974
1975   class READDIR4resok(baseobj.BaseObj)
1976       struct READDIR4resok {
1977           verifier4 verifier;
1978           dirlist4  reply;
1979       };
1980
1981
1982       Methods defined here:
1983       ---------------------
1984
1985       __init__(self, unpack)
1986
1987   class READLINK4res(baseobj.BaseObj)
1988       union switch READLINK4res (nfsstat4 status) {
1989           case const.NFS4_OK:
1990               READLINK4resok resok;
1991           default:
1992               void;
1993       };
1994
1995
1996       Methods defined here:
1997       ---------------------
1998
1999       __init__(self, unpack)
2000
2001   class READLINK4resok(baseobj.BaseObj)
2002       struct READLINK4resok {
2003           linktext4 link;
2004       };
2005
2006
2007       Methods defined here:
2008       ---------------------
2009
2010       __init__(self, unpack)
2011
2012   class READ_PLUS4args(baseobj.BaseObj)
2013       struct READ_PLUS4args {
2014           /* CURRENT_FH: file */
2015           stateid4 stateid;
2016           offset4  offset;
2017           count4   count;
2018       };
2019
2020
2021       Methods defined here:
2022       ---------------------
2023
2024       __init__(self, unpack)
2025
2026   class READ_PLUS4res(baseobj.BaseObj)
2027       union switch READ_PLUS4res (nfsstat4 status) {
2028           case const.NFS4_OK:
2029               read_plus_res4 resok;
2030           default:
2031               void;
2032       };
2033
2034
2035       Methods defined here:
2036       ---------------------
2037
2038       __init__(self, unpack)
2039
2040   class RECLAIM_COMPLETE4args(baseobj.BaseObj)
2041       union switch RECLAIM_COMPLETE4args (bool one_fs) {
2042           case const.TRUE:
2043               /*
2044                * If one_fs TRUE,
2045                *    CURRENT_FH: object in filesystem reclaim is complete for.
2046                */
2047               void;
2048           default:
2049               void;
2050       };
2051
2052
2053       Methods defined here:
2054       ---------------------
2055
2056       __init__(self, unpack)
2057
2058   class RECLAIM_COMPLETE4res(baseobj.BaseObj)
2059       struct RECLAIM_COMPLETE4res {
2060           nfsstat4 status;
2061       };
2062
2063
2064       Methods defined here:
2065       ---------------------
2066
2067       __init__(self, unpack)
2068
2069   class RELEASE_LOCKOWNER4args(baseobj.BaseObj)
2070       struct RELEASE_LOCKOWNER4args {
2071           lock_owner4 owner;
2072       };
2073
2074
2075       Methods defined here:
2076       ---------------------
2077
2078       __init__(self, unpack)
2079
2080   class RELEASE_LOCKOWNER4res(baseobj.BaseObj)
2081       struct RELEASE_LOCKOWNER4res {
2082           nfsstat4 status;
2083       };
2084
2085
2086       Methods defined here:
2087       ---------------------
2088
2089       __init__(self, unpack)
2090
2091   class REMOVE4args(baseobj.BaseObj)
2092       struct REMOVE4args {
2093           /* CURRENT_FH: directory */
2094           component4 name;
2095       };
2096
2097
2098       Methods defined here:
2099       ---------------------
2100
2101       __init__(self, unpack)
2102
2103   class REMOVE4res(baseobj.BaseObj)
2104       union switch REMOVE4res (nfsstat4 status) {
2105           case const.NFS4_OK:
2106               REMOVE4resok resok;
2107           default:
2108               void;
2109       };
2110
2111
2112       Methods defined here:
2113       ---------------------
2114
2115       __init__(self, unpack)
2116
2117   class REMOVE4resok(baseobj.BaseObj)
2118       struct REMOVE4resok {
2119           change_info4 cinfo;
2120       };
2121
2122
2123       Methods defined here:
2124       ---------------------
2125
2126       __init__(self, unpack)
2127
2128   class RENAME4args(baseobj.BaseObj)
2129       struct RENAME4args {
2130           /* SAVED_FH: source directory */
2131           component4 name;
2132           /* CURRENT_FH: target directory */
2133           component4 newname;
2134       };
2135
2136
2137       Methods defined here:
2138       ---------------------
2139
2140       __init__(self, unpack)
2141
2142   class RENAME4res(baseobj.BaseObj)
2143       union switch RENAME4res (nfsstat4 status) {
2144           case const.NFS4_OK:
2145               RENAME4resok resok;
2146           default:
2147               void;
2148       };
2149
2150
2151       Methods defined here:
2152       ---------------------
2153
2154       __init__(self, unpack)
2155
2156   class RENAME4resok(baseobj.BaseObj)
2157       struct RENAME4resok {
2158           change_info4 source;
2159           change_info4 target;
2160       };
2161
2162
2163       Methods defined here:
2164       ---------------------
2165
2166       __init__(self, unpack)
2167
2168   class RENEW4args(baseobj.BaseObj)
2169       struct RENEW4args {
2170           clientid4 clientid;
2171       };
2172
2173
2174       Methods defined here:
2175       ---------------------
2176
2177       __init__(self, unpack)
2178
2179   class RENEW4res(baseobj.BaseObj)
2180       struct RENEW4res {
2181           nfsstat4 status;
2182       };
2183
2184
2185       Methods defined here:
2186       ---------------------
2187
2188       __init__(self, unpack)
2189
2190   class RESTOREFH4res(baseobj.BaseObj)
2191       struct RESTOREFH4res {
2192           /*
2193            * If status is NFS4_OK,
2194            *     new CURRENT_FH: value of saved fh
2195            */
2196           nfsstat4 status;
2197       };
2198
2199
2200       Methods defined here:
2201       ---------------------
2202
2203       __init__(self, unpack)
2204
2205   class SAVEFH4res(baseobj.BaseObj)
2206       struct SAVEFH4res {
2207           /*
2208            * If status is NFS4_OK,
2209            *    new SAVED_FH: value of current fh
2210            */
2211           nfsstat4 status;
2212       };
2213
2214
2215       Methods defined here:
2216       ---------------------
2217
2218       __init__(self, unpack)
2219
2220   class SECINFO4args(baseobj.BaseObj)
2221       struct SECINFO4args {
2222           /* CURRENT_FH: directory */
2223           component4 name;
2224       };
2225
2226
2227       Methods defined here:
2228       ---------------------
2229
2230       __init__(self, unpack)
2231
2232   class SECINFO4res(baseobj.BaseObj)
2233       union switch SECINFO4res (nfsstat4 status) {
2234           case const.NFS4_OK:
2235               /* CURRENTFH: consumed */
2236               SECINFO4resok resok;
2237           default:
2238               void;
2239       };
2240
2241
2242       Methods defined here:
2243       ---------------------
2244
2245       __init__(self, unpack)
2246
2247   class SECINFO_NO_NAME4args(baseobj.BaseObj)
2248       struct SECINFO_NO_NAME4args {
2249           /* CURRENT_FH: object or child directory */
2250           secinfo_style4 style;
2251       };
2252
2253
2254       Methods defined here:
2255       ---------------------
2256
2257       __init__(self, unpack)
2258
2259   class SECINFO_NO_NAME4res(baseobj.BaseObj)
2260       SECINFO_NO_NAME4res = class SECINFO4res(baseobj.BaseObj)
2261
2262   class SEEK4args(baseobj.BaseObj)
2263       struct SEEK4args {
2264           /* CURRENT_FH: file */
2265           stateid4      stateid;
2266           offset4       offset;
2267           data_content4 what;
2268       };
2269
2270
2271       Methods defined here:
2272       ---------------------
2273
2274       __init__(self, unpack)
2275
2276   class SEEK4res(baseobj.BaseObj)
2277       union switch SEEK4res (nfsstat4 status) {
2278           case const.NFS4_OK:
2279               seek_res4 resok;
2280           default:
2281               void;
2282       };
2283
2284
2285       Methods defined here:
2286       ---------------------
2287
2288       __init__(self, unpack)
2289
2290   class SEQUENCE4args(baseobj.BaseObj)
2291       struct SEQUENCE4args {
2292           sessionid4  sessionid;
2293           sequenceid4 sequenceid;
2294           slotid4     slotid;
2295           slotid4     highest_slotid;
2296           bool        cachethis;
2297       };
2298
2299
2300       Methods defined here:
2301       ---------------------
2302
2303       __init__(self, unpack)
2304
2305   class SEQUENCE4res(baseobj.BaseObj)
2306       union switch SEQUENCE4res (nfsstat4 status) {
2307           case const.NFS4_OK:
2308               SEQUENCE4resok resok;
2309           default:
2310               void;
2311       };
2312
2313
2314       Methods defined here:
2315       ---------------------
2316
2317       __init__(self, unpack)
2318
2319   class SEQUENCE4resok(baseobj.BaseObj)
2320       struct SEQUENCE4resok {
2321           sessionid4  sessionid;
2322           sequenceid4 sequenceid;
2323           slotid4     slotid;
2324           slotid4     highest_slotid;
2325           slotid4     target_highest_slotid;
2326           uint32_t    status_flags;
2327       };
2328
2329
2330       Methods defined here:
2331       ---------------------
2332
2333       __init__(self, unpack)
2334
2335   class SETATTR4args(baseobj.BaseObj)
2336       struct SETATTR4args {
2337           /* CURRENT_FH: target object */
2338           stateid4 stateid;
2339           fattr4   attributes;
2340       };
2341
2342
2343       Methods defined here:
2344       ---------------------
2345
2346       __init__(self, unpack)
2347
2348   class SETATTR4res(baseobj.BaseObj)
2349       struct SETATTR4res {
2350           nfsstat4 status;
2351           bitmap4  attrset;
2352       };
2353
2354
2355       Methods defined here:
2356       ---------------------
2357
2358       __init__(self, unpack)
2359
2360   class SETCLIENTID4args(baseobj.BaseObj)
2361       struct SETCLIENTID4args {
2362           nfs_client_id4 client;
2363           cb_client4     callback;
2364           uint32_t       callback_ident;
2365       };
2366
2367
2368       Methods defined here:
2369       ---------------------
2370
2371       __init__(self, unpack)
2372
2373   class SETCLIENTID4res(baseobj.BaseObj)
2374       union switch SETCLIENTID4res (nfsstat4 status) {
2375           case const.NFS4_OK:
2376               SETCLIENTID4resok resok;
2377           case const.NFS4ERR_CLID_INUSE:
2378               clientaddr4 client;
2379           default:
2380               void;
2381       };
2382
2383
2384       Methods defined here:
2385       ---------------------
2386
2387       __init__(self, unpack)
2388
2389   class SETCLIENTID4resok(baseobj.BaseObj)
2390       struct SETCLIENTID4resok {
2391           clientid4 clientid;
2392           verifier4 verifier;
2393       };
2394
2395
2396       Methods defined here:
2397       ---------------------
2398
2399       __init__(self, unpack)
2400
2401   class SETCLIENTID_CONFIRM4args(baseobj.BaseObj)
2402       struct SETCLIENTID_CONFIRM4args {
2403           clientid4 clientid;
2404           verifier4 verifier;
2405       };
2406
2407
2408       Methods defined here:
2409       ---------------------
2410
2411       __init__(self, unpack)
2412
2413   class SETCLIENTID_CONFIRM4res(baseobj.BaseObj)
2414       struct SETCLIENTID_CONFIRM4res {
2415           nfsstat4 status;
2416       };
2417
2418
2419       Methods defined here:
2420       ---------------------
2421
2422       __init__(self, unpack)
2423
2424   class SET_SSV4args(baseobj.BaseObj)
2425       struct SET_SSV4args {
2426           opaque ssv<>;
2427           opaque digest<>;
2428       };
2429
2430
2431       Methods defined here:
2432       ---------------------
2433
2434       __init__(self, unpack)
2435
2436   class SET_SSV4res(baseobj.BaseObj)
2437       union switch SET_SSV4res (nfsstat4 status) {
2438           case const.NFS4_OK:
2439               SET_SSV4resok resok;
2440           default:
2441               void;
2442       };
2443
2444
2445       Methods defined here:
2446       ---------------------
2447
2448       __init__(self, unpack)
2449
2450   class SET_SSV4resok(baseobj.BaseObj)
2451       struct SET_SSV4resok {
2452           opaque digest<>;
2453       };
2454
2455
2456       Methods defined here:
2457       ---------------------
2458
2459       __init__(self, unpack)
2460
2461   class TEST_STATEID4args(baseobj.BaseObj)
2462       struct TEST_STATEID4args {
2463           stateid4 stateids<>;
2464       };
2465
2466
2467       Methods defined here:
2468       ---------------------
2469
2470       __init__(self, unpack)
2471
2472   class TEST_STATEID4res(baseobj.BaseObj)
2473       union switch TEST_STATEID4res (nfsstat4 status) {
2474           case const.NFS4_OK:
2475               TEST_STATEID4resok resok;
2476           default:
2477               void;
2478       };
2479
2480
2481       Methods defined here:
2482       ---------------------
2483
2484       __init__(self, unpack)
2485
2486   class TEST_STATEID4resok(baseobj.BaseObj)
2487       struct TEST_STATEID4resok {
2488           nfsstat4 status_codes<>;
2489       };
2490
2491
2492       Methods defined here:
2493       ---------------------
2494
2495       __init__(self, unpack)
2496
2497   class VERIFY4args(baseobj.BaseObj)
2498       struct VERIFY4args {
2499           /* CURRENT_FH: object */
2500           fattr4 attributes;
2501       };
2502
2503
2504       Methods defined here:
2505       ---------------------
2506
2507       __init__(self, unpack)
2508
2509   class VERIFY4res(baseobj.BaseObj)
2510       struct VERIFY4res {
2511           nfsstat4 status;
2512       };
2513
2514
2515       Methods defined here:
2516       ---------------------
2517
2518       __init__(self, unpack)
2519
2520   class WANT_DELEGATION4args(baseobj.BaseObj)
2521       struct WANT_DELEGATION4args {
2522           uint32_t     want;
2523           deleg_claim4 claim;
2524       };
2525
2526
2527       Methods defined here:
2528       ---------------------
2529
2530       __init__(self, unpack)
2531
2532   class WANT_DELEGATION4res(baseobj.BaseObj)
2533       union switch WANT_DELEGATION4res (nfsstat4 status) {
2534           case const.NFS4_OK:
2535               open_delegation4 resok;
2536           default:
2537               void;
2538       };
2539
2540
2541       Methods defined here:
2542       ---------------------
2543
2544       __init__(self, unpack)
2545
2546   class WRITE4args(baseobj.BaseObj)
2547       struct WRITE4args {
2548           /* CURRENT_FH: file */
2549           stateid4    stateid;
2550           offset4     offset;
2551           stable_how4 stable;
2552           opaque      data<>;
2553       };
2554
2555
2556       Methods defined here:
2557       ---------------------
2558
2559       __init__(self, unpack)
2560
2561   class WRITE4res(baseobj.BaseObj)
2562       union switch WRITE4res (nfsstat4 status) {
2563           case const.NFS4_OK:
2564               WRITE4resok resok;
2565           default:
2566               void;
2567       };
2568
2569
2570       Methods defined here:
2571       ---------------------
2572
2573       __init__(self, unpack)
2574
2575   class WRITE4resok(baseobj.BaseObj)
2576       struct WRITE4resok {
2577           count4      count;
2578           stable_how4 committed;
2579           verifier4   verifier;
2580       };
2581
2582
2583       Methods defined here:
2584       ---------------------
2585
2586       __init__(self, unpack)
2587
2588   class WRITE_SAME4args(baseobj.BaseObj)
2589       struct WRITE_SAME4args {
2590           /* CURRENT_FH: file */
2591           stateid4        stateid;
2592           stable_how4     stable;
2593           app_data_block4 adb;
2594       };
2595
2596
2597       Methods defined here:
2598       ---------------------
2599
2600       __init__(self, unpack)
2601
2602   class WRITE_SAME4res(baseobj.BaseObj)
2603       union switch WRITE_SAME4res (nfsstat4 status) {
2604           case const.NFS4_OK:
2605               write_response4 resok;
2606           default:
2607               void;
2608       };
2609
2610
2611       Methods defined here:
2612       ---------------------
2613
2614       __init__(self, unpack)
2615
2616   class app_data_block4(baseobj.BaseObj)
2617       struct app_data_block4 {
2618           offset4 offset;
2619           length4 block_size;
2620           length4 block_count;
2621           length4 reloff_blocknum;
2622           count4  block_num;
2623           length4 reloff_pattern;
2624           opaque  pattern<>;
2625       };
2626
2627
2628       Methods defined here:
2629       ---------------------
2630
2631       __init__(self, unpack)
2632
2633   class attr_notice4(baseobj.BaseObj)
2634       attr_notice4 = class nfstime4(baseobj.BaseObj)
2635
2636   class authsys_parms(baseobj.BaseObj)
2637       struct authsys_parms {
2638           unsigned int stamp;
2639           string       machinename<255>;
2640           unsigned int uid;
2641           unsigned int gid;
2642           unsigned int gids<16>;
2643       };
2644
2645
2646       Methods defined here:
2647       ---------------------
2648
2649       __init__(self, unpack)
2650
2651   class callback_sec_parms4(baseobj.BaseObj)
2652       union switch callback_sec_parms4 (nfs_secflavor4 flavor) {
2653           case const.AUTH_NONE:
2654               void;
2655           case const.AUTH_SYS:
2656               authsys_parms sys_cred;      /* RFC 5531 */
2657           case const.RPCSEC_GSS:
2658               gss_cb_handles4 gss_handles;
2659       };
2660
2661
2662       Methods defined here:
2663       ---------------------
2664
2665       __init__(self, unpack)
2666
2667   class cb_client4(baseobj.BaseObj)
2668       struct cb_client4 {
2669           uint32_t cb_program;
2670           netaddr4 cb_location;
2671       };
2672
2673
2674       Methods defined here:
2675       ---------------------
2676
2677       __init__(self, unpack)
2678
2679   class change_attr_type4(packet.utils.Enum)
2680       enum change_attr_type4
2681
2682
2683   class change_info4(baseobj.BaseObj)
2684       struct change_info4 {
2685           bool      atomic;
2686           changeid4 before;
2687           changeid4 after;
2688       };
2689
2690
2691       Methods defined here:
2692       ---------------------
2693
2694       __init__(self, unpack)
2695
2696   class change_policy4(baseobj.BaseObj)
2697       struct change_policy4 {
2698           uint64_t major;
2699           uint64_t minor;
2700       };
2701
2702
2703       Methods defined here:
2704       ---------------------
2705
2706       __init__(self, unpack)
2707
2708   class channel_attrs4(baseobj.BaseObj)
2709       struct channel_attrs4 {
2710           count4   headerpadsize;
2711           count4   maxrequestsize;
2712           count4   maxresponsesize;
2713           count4   maxresponsesize_cached;
2714           count4   maxoperations;
2715           count4   maxrequests;
2716           uint32_t rdma_ird<1>;
2717       };
2718
2719
2720       Methods defined here:
2721       ---------------------
2722
2723       __init__(self, unpack)
2724
2725   class channel_dir_from_client4(packet.utils.Enum)
2726       enum channel_dir_from_client4
2727
2728
2729   class channel_dir_from_server4(packet.utils.Enum)
2730       enum channel_dir_from_server4
2731
2732
2733   class client_owner4(baseobj.BaseObj)
2734       struct client_owner4 {
2735           verifier4 verifier;
2736           opaque    ownerid<NFS4_OPAQUE_LIMIT>;
2737       };
2738
2739
2740       Methods defined here:
2741       ---------------------
2742
2743       __init__(self, unpack)
2744
2745   class clientaddr4(baseobj.BaseObj)
2746       struct clientaddr4 {
2747           /* See struct rpcb in RFC 1833 */
2748           string netid<>;  /* network id */
2749           string addr<>;   /* universal address */
2750       };
2751
2752
2753       Methods defined here:
2754       ---------------------
2755
2756       __init__(self, unpack)
2757
2758   class copy_confirm_auth_priv(baseobj.BaseObj)
2759       struct copy_confirm_auth_priv {
2760           /* equal to GSS_GetMIC() of cfap_shared_secret */
2761           opaque        secret<>;
2762           /* the NFSv4 user name that the user principal maps to */
2763           utf8str_mixed username;
2764       };
2765
2766
2767       Methods defined here:
2768       ---------------------
2769
2770       __init__(self, unpack)
2771
2772   class copy_from_auth_priv(baseobj.BaseObj)
2773       struct copy_from_auth_priv {
2774           secret4       secret;
2775           netloc4       destination;
2776           /* the NFSv4 user name that the user principal maps to */
2777           utf8str_mixed username;
2778       };
2779
2780
2781       Methods defined here:
2782       ---------------------
2783
2784       __init__(self, unpack)
2785
2786   class copy_requirements4(baseobj.BaseObj)
2787       struct copy_requirements4 {
2788           bool consecutive;
2789           bool synchronous;
2790       };
2791
2792
2793       Methods defined here:
2794       ---------------------
2795
2796       __init__(self, unpack)
2797
2798   class copy_to_auth_priv(baseobj.BaseObj)
2799       struct copy_to_auth_priv {
2800           /* equal to cfap_shared_secret */
2801           secret4       secret;
2802           netloc4       source<>;
2803           /* the NFSv4 user name that the user principal maps to */
2804           utf8str_mixed username;
2805       };
2806
2807
2808       Methods defined here:
2809       ---------------------
2810
2811       __init__(self, unpack)
2812
2813   class createhow4(baseobj.BaseObj)
2814       union switch createhow4 (createmode4 mode) {
2815           case const.UNCHECKED4:
2816           case const.GUARDED4:
2817               fattr4 attributes;
2818           case const.EXCLUSIVE4:
2819               verifier4 verifier;
2820           case const.EXCLUSIVE4_1:
2821               creatverfattr createboth;
2822       };
2823
2824
2825       Methods defined here:
2826       ---------------------
2827
2828       __init__(self, unpack)
2829
2830   class createmode4(packet.utils.Enum)
2831       enum createmode4
2832
2833
2834   class createtype4(baseobj.BaseObj)
2835       union switch createtype4 (nfs_ftype4 type) {
2836           case const.NF4LNK:
2837               linktext4 linkdata;
2838           case const.NF4BLK:
2839           case const.NF4CHR:
2840               specdata4 devdata;
2841           case const.NF4SOCK:
2842           case const.NF4FIFO:
2843           case const.NF4DIR:
2844               void;
2845           default:
2846               void;               /* server should return NFS4ERR_BADTYPE */
2847       };
2848
2849
2850       Methods defined here:
2851       ---------------------
2852
2853       __init__(self, unpack)
2854
2855   class creatverfattr(baseobj.BaseObj)
2856       struct creatverfattr {
2857           verifier4 verifier;
2858           fattr4    attrs;
2859       };
2860
2861
2862       Methods defined here:
2863       ---------------------
2864
2865       __init__(self, unpack)
2866
2867   class data4(baseobj.BaseObj)
2868       struct data4 {
2869           offset4 offset;
2870           opaque  data<>;
2871       };
2872
2873
2874       Methods defined here:
2875       ---------------------
2876
2877       __init__(self, unpack)
2878
2879   class data_content4(packet.utils.Enum)
2880       enum data_content4
2881
2882
2883   class data_info4(baseobj.BaseObj)
2884       struct data_info4 {
2885           offset4 offset;
2886           length4 count;
2887       };
2888
2889
2890       Methods defined here:
2891       ---------------------
2892
2893       __init__(self, unpack)
2894
2895   class deleg_claim4(baseobj.BaseObj)
2896       union switch deleg_claim4 (open_claim_type4 claim) {
2897           /*
2898            * No special rights to object. Ordinary delegation
2899            * request of the specified object. Object identified
2900            * by filehandle.
2901            */
2902           case const.CLAIM_FH:
2903               void;
2904           /*
2905            * Right to file based on a delegation granted
2906            * to a previous boot instance of the client.
2907            * File is specified by filehandle.
2908            */
2909           case const.CLAIM_DELEG_PREV_FH:
2910               /* CURRENT_FH: object being delegated */
2911               void;
2912           /*
2913            * Right to the file established by an open previous
2914            * to server reboot.  File identified by filehandle.
2915            * Used during server reclaim grace period.
2916            */
2917           case const.CLAIM_PREVIOUS:
2918               /* CURRENT_FH: object being reclaimed */
2919               open_delegation_type4 deleg_type;
2920       };
2921
2922
2923       Methods defined here:
2924       ---------------------
2925
2926       __init__(self, unpack)
2927
2928   class device_addr4(baseobj.BaseObj)
2929       union switch device_addr4 (layouttype4 type) {
2930           case const.LAYOUT4_NFSV4_1_FILES:
2931               nfsv4_1_file_layout_ds_addr4 body;
2932           case const.LAYOUT4_FLEX_FILES:
2933               ff_device_addr4 body;
2934           default:
2935               /* All other types are not supported yet */
2936               opaque body<>;
2937       };
2938
2939
2940       Methods defined here:
2941       ---------------------
2942
2943       __init__(self, unpack)
2944
2945   class device_error4(baseobj.BaseObj)
2946       struct device_error4 {
2947           deviceid4  deviceid;
2948           nfsstat4   status;
2949           nfs_opnum4 opnum;
2950       };
2951
2952
2953       Methods defined here:
2954       ---------------------
2955
2956       __init__(self, unpack)
2957
2958   class dirlist4(baseobj.BaseObj)
2959       struct dirlist4 {
2960           entry4 *entries;
2961           bool   eof;
2962       };
2963
2964
2965       Methods defined here:
2966       ---------------------
2967
2968       __init__(self, unpack)
2969
2970   class entry4(baseobj.BaseObj)
2971       struct entry4 {
2972           nfs_cookie4 cookie;
2973           component4  name;
2974           fattr4      attrs;
2975           entry4      *nextentry;
2976       };
2977
2978
2979       Methods defined here:
2980       ---------------------
2981
2982       __init__(self, unpack)
2983
2984   class exist_lock_owner4(baseobj.BaseObj)
2985       struct exist_lock_owner4 {
2986           stateid4 stateid;
2987           seqid4   seqid;
2988       };
2989
2990
2991       Methods defined here:
2992       ---------------------
2993
2994       __init__(self, unpack)
2995
2996   class fattr4_archive(packet.utils.Enum)
2997       fattr4_archive = class nfs_bool(packet.utils.Enum)
2998
2999   class fattr4_cansettime(packet.utils.Enum)
3000       fattr4_cansettime = class nfs_bool(packet.utils.Enum)
3001
3002   class fattr4_case_insensitive(packet.utils.Enum)
3003       fattr4_case_insensitive = class nfs_bool(packet.utils.Enum)
3004
3005   class fattr4_case_preserving(packet.utils.Enum)
3006       fattr4_case_preserving = class nfs_bool(packet.utils.Enum)
3007
3008   class fattr4_change_attr_type(packet.utils.Enum)
3009       fattr4_change_attr_type = class change_attr_type4(packet.utils.Enum)
3010
3011   class fattr4_change_policy(baseobj.BaseObj)
3012       fattr4_change_policy = class change_policy4(baseobj.BaseObj)
3013
3014   class fattr4_chown_restricted(packet.utils.Enum)
3015       fattr4_chown_restricted = class nfs_bool(packet.utils.Enum)
3016
3017   class fattr4_dacl(baseobj.BaseObj)
3018       fattr4_dacl = class nfsacl41(baseobj.BaseObj)
3019
3020   class fattr4_dir_notif_delay(baseobj.BaseObj)
3021       fattr4_dir_notif_delay = class nfstime4(baseobj.BaseObj)
3022
3023   class fattr4_dirent_notif_delay(baseobj.BaseObj)
3024       fattr4_dirent_notif_delay = class nfstime4(baseobj.BaseObj)
3025
3026   class fattr4_fs_locations(baseobj.BaseObj)
3027       fattr4_fs_locations = class fs_locations4(baseobj.BaseObj)
3028
3029   class fattr4_fs_locations_info(baseobj.BaseObj)
3030       fattr4_fs_locations_info = class fs_locations_info4(baseobj.BaseObj)
3031
3032   class fattr4_fs_status(baseobj.BaseObj)
3033       fattr4_fs_status = class fs4_status(baseobj.BaseObj)
3034
3035   class fattr4_fsid(baseobj.BaseObj)
3036       fattr4_fsid = class fsid4(baseobj.BaseObj)
3037
3038   class fattr4_hidden(packet.utils.Enum)
3039       fattr4_hidden = class nfs_bool(packet.utils.Enum)
3040
3041   class fattr4_homogeneous(packet.utils.Enum)
3042       fattr4_homogeneous = class nfs_bool(packet.utils.Enum)
3043
3044   class fattr4_layout_hint(baseobj.BaseObj)
3045       fattr4_layout_hint = class layouthint4(baseobj.BaseObj)
3046
3047   class fattr4_link_support(packet.utils.Enum)
3048       fattr4_link_support = class nfs_bool(packet.utils.Enum)
3049
3050   class fattr4_mdsthreshold(baseobj.BaseObj)
3051       fattr4_mdsthreshold = class mdsthreshold4(baseobj.BaseObj)
3052
3053   class fattr4_mode_set_masked(baseobj.BaseObj)
3054       fattr4_mode_set_masked = class mode_masked4(baseobj.BaseObj)
3055
3056   class fattr4_mode_umask(baseobj.BaseObj)
3057       fattr4_mode_umask = class mode_umask4(baseobj.BaseObj)
3058
3059   class fattr4_named_attr(packet.utils.Enum)
3060       fattr4_named_attr = class nfs_bool(packet.utils.Enum)
3061
3062   class fattr4_no_trunc(packet.utils.Enum)
3063       fattr4_no_trunc = class nfs_bool(packet.utils.Enum)
3064
3065   class fattr4_rawdev(baseobj.BaseObj)
3066       fattr4_rawdev = class specdata4(baseobj.BaseObj)
3067
3068   class fattr4_rdattr_error(packet.utils.Enum)
3069       fattr4_rdattr_error = class nfsstat4(packet.utils.Enum)
3070
3071   class fattr4_retentevt_get(baseobj.BaseObj)
3072       fattr4_retentevt_get = class retention_get4(baseobj.BaseObj)
3073
3074   class fattr4_retentevt_set(baseobj.BaseObj)
3075       fattr4_retentevt_set = class retention_set4(baseobj.BaseObj)
3076
3077   class fattr4_retention_get(baseobj.BaseObj)
3078       fattr4_retention_get = class retention_get4(baseobj.BaseObj)
3079
3080   class fattr4_retention_set(baseobj.BaseObj)
3081       fattr4_retention_set = class retention_set4(baseobj.BaseObj)
3082
3083   class fattr4_sacl(baseobj.BaseObj)
3084       fattr4_sacl = class nfsacl41(baseobj.BaseObj)
3085
3086   class fattr4_sec_label(baseobj.BaseObj)
3087       fattr4_sec_label = class sec_label4(baseobj.BaseObj)
3088
3089   class fattr4_symlink_support(packet.utils.Enum)
3090       fattr4_symlink_support = class nfs_bool(packet.utils.Enum)
3091
3092   class fattr4_system(packet.utils.Enum)
3093       fattr4_system = class nfs_bool(packet.utils.Enum)
3094
3095   class fattr4_time_access(baseobj.BaseObj)
3096       fattr4_time_access = class nfstime4(baseobj.BaseObj)
3097
3098   class fattr4_time_access_set(baseobj.BaseObj)
3099       fattr4_time_access_set = class settime4(baseobj.BaseObj)
3100
3101   class fattr4_time_backup(baseobj.BaseObj)
3102       fattr4_time_backup = class nfstime4(baseobj.BaseObj)
3103
3104   class fattr4_time_create(baseobj.BaseObj)
3105       fattr4_time_create = class nfstime4(baseobj.BaseObj)
3106
3107   class fattr4_time_delta(baseobj.BaseObj)
3108       fattr4_time_delta = class nfstime4(baseobj.BaseObj)
3109
3110   class fattr4_time_metadata(baseobj.BaseObj)
3111       fattr4_time_metadata = class nfstime4(baseobj.BaseObj)
3112
3113   class fattr4_time_modify(baseobj.BaseObj)
3114       fattr4_time_modify = class nfstime4(baseobj.BaseObj)
3115
3116   class fattr4_time_modify_set(baseobj.BaseObj)
3117       fattr4_time_modify_set = class settime4(baseobj.BaseObj)
3118
3119   class fattr4_type(packet.utils.Enum)
3120       fattr4_type = class nfs_ftype4(packet.utils.Enum)
3121
3122   class fattr4_unique_handles(packet.utils.Enum)
3123       fattr4_unique_handles = class nfs_bool(packet.utils.Enum)
3124
3125   class ff_cb_recall_any_mask(packet.utils.Enum)
3126       enum ff_cb_recall_any_mask
3127
3128
3129   class ff_data_server4(baseobj.BaseObj)
3130       struct ff_data_server4 {
3131           deviceid4          deviceid;
3132           uint32_t           efficiency;
3133           stateid4           stateid;
3134           nfs_fh4            fh_list<>;
3135           fattr4_owner       user;
3136           fattr4_owner_group group;
3137       };
3138
3139
3140       Methods defined here:
3141       ---------------------
3142
3143       __init__(self, unpack)
3144
3145   class ff_device_addr4(baseobj.BaseObj)
3146       struct ff_device_addr4 {
3147           uint32_t            size;        /* opaque size from device_addr4 */
3148           multipath_list4     netaddrs;
3149           ff_device_versions4 versions<>;
3150       };
3151
3152
3153       Methods defined here:
3154       ---------------------
3155
3156       __init__(self, unpack)
3157
3158   class ff_device_versions4(baseobj.BaseObj)
3159       struct ff_device_versions4 {
3160           uint32_t version;
3161           uint32_t minorversion;
3162           uint32_t rsize;
3163           uint32_t wsize;
3164           bool     tightly_coupled;
3165       };
3166
3167
3168       Methods defined here:
3169       ---------------------
3170
3171       __init__(self, unpack)
3172
3173   class ff_io_latency4(baseobj.BaseObj)
3174       struct ff_io_latency4 {
3175           uint64_t ops_requested;
3176           uint64_t bytes_requested;
3177           uint64_t ops_completed;
3178           uint64_t bytes_completed;
3179           uint64_t bytes_not_delivered;
3180           nfstime4 total_busy_time;
3181           nfstime4 aggregate_completion_time;
3182       };
3183
3184
3185       Methods defined here:
3186       ---------------------
3187
3188       __init__(self, unpack)
3189
3190   class ff_ioerr4(baseobj.BaseObj)
3191       struct ff_ioerr4 {
3192           offset4       offset;
3193           length4       length;
3194           stateid4      stateid;
3195           device_error4 errors<>;
3196       };
3197
3198
3199       Methods defined here:
3200       ---------------------
3201
3202       __init__(self, unpack)
3203
3204   class ff_iostats4(baseobj.BaseObj)
3205       struct ff_iostats4 {
3206           offset4          offset;
3207           length4          length;
3208           stateid4         stateid;
3209           io_info4         read;
3210           io_info4         write;
3211           deviceid4        deviceid;
3212           ff_layoutupdate4 layoutupdate;
3213       };
3214
3215
3216       Methods defined here:
3217       ---------------------
3218
3219       __init__(self, unpack)
3220
3221   class ff_layout4(baseobj.BaseObj)
3222       struct ff_layout4 {
3223           uint32_t   size;         /* opaque size from layout_content4 */
3224           length4    stripe_unit;
3225           ff_mirror4 mirrors<>;
3226           ff_flags4  flags;
3227           uint32_t   stats_hint;
3228       };
3229
3230
3231       Methods defined here:
3232       ---------------------
3233
3234       __init__(self, unpack)
3235
3236   class ff_layouthint4(baseobj.BaseObj)
3237       struct ff_layouthint4 {
3238           ff_mirrors_hint mirrors_hint;
3239       };
3240
3241
3242       Methods defined here:
3243       ---------------------
3244
3245       __init__(self, unpack)
3246
3247   class ff_layoutreturn4(baseobj.BaseObj)
3248       struct ff_layoutreturn4 {
3249           uint32_t    size;              /* opaque size from layoutreturn_file4 */
3250           ff_ioerr4   ioerr_report<>;
3251           ff_iostats4 iostats_report<>;
3252       };
3253
3254
3255       Methods defined here:
3256       ---------------------
3257
3258       __init__(self, unpack)
3259
3260   class ff_layoutupdate4(baseobj.BaseObj)
3261       struct ff_layoutupdate4 {
3262           netaddr4       addr;
3263           nfs_fh4        fh;
3264           ff_io_latency4 read;
3265           ff_io_latency4 write;
3266           nfstime4       duration;
3267           bool           local;
3268       };
3269
3270
3271       Methods defined here:
3272       ---------------------
3273
3274       __init__(self, unpack)
3275
3276   class ff_mirror4(baseobj.BaseObj)
3277       struct ff_mirror4 {
3278           ff_data_server4 data_servers<>;
3279       };
3280
3281
3282       Methods defined here:
3283       ---------------------
3284
3285       __init__(self, unpack)
3286
3287   class ff_mirrors_hint(baseobj.BaseObj)
3288       union switch ff_mirrors_hint (bool ffmc_valid) {
3289           case const.TRUE:
3290               uint32_t mirrors;
3291           case const.FALSE:
3292               void;
3293       };
3294
3295
3296       Methods defined here:
3297       ---------------------
3298
3299       __init__(self, unpack)
3300
3301   class filelayout_hint_care4(packet.utils.Enum)
3302       enum filelayout_hint_care4
3303
3304
3305   class fs4_status(baseobj.BaseObj)
3306       struct fs4_status {
3307           bool            absent;
3308           fs4_status_type type;
3309           utf8str_cs      source;
3310           utf8str_cs      current;
3311           int32_t         age;
3312           nfstime4        version;
3313       };
3314
3315
3316       Methods defined here:
3317       ---------------------
3318
3319       __init__(self, unpack)
3320
3321   class fs4_status_type(packet.utils.Enum)
3322       enum fs4_status_type
3323
3324
3325   class fs_location4(baseobj.BaseObj)
3326       struct fs_location4 {
3327           utf8str_cis server<>;
3328           pathname4   root;
3329       };
3330
3331
3332       Methods defined here:
3333       ---------------------
3334
3335       __init__(self, unpack)
3336
3337   class fs_locations4(baseobj.BaseObj)
3338       struct fs_locations4 {
3339           pathname4    root;
3340           fs_location4 locations<>;
3341       };
3342
3343
3344       Methods defined here:
3345       ---------------------
3346
3347       __init__(self, unpack)
3348
3349   class fs_locations_info4(baseobj.BaseObj)
3350       struct fs_locations_info4 {
3351           uint32_t           flags;
3352           int32_t            valid_for;
3353           pathname4          root;
3354           fs_locations_item4 items<>;
3355       };
3356
3357
3358       Methods defined here:
3359       ---------------------
3360
3361       __init__(self, unpack)
3362
3363   class fs_locations_item4(baseobj.BaseObj)
3364       struct fs_locations_item4 {
3365           fs_locations_server4 entries<>;
3366           pathname4            root;
3367       };
3368
3369
3370       Methods defined here:
3371       ---------------------
3372
3373       __init__(self, unpack)
3374
3375   class fs_locations_server4(baseobj.BaseObj)
3376       struct fs_locations_server4 {
3377           int32_t     currency;
3378           opaque      info<>;
3379           utf8str_cis server;
3380       };
3381
3382
3383       Methods defined here:
3384       ---------------------
3385
3386       __init__(self, unpack)
3387
3388   class fsid4(baseobj.BaseObj)
3389       struct fsid4 {
3390           uint64_t major;
3391           uint64_t minor;
3392       };
3393
3394
3395       Methods defined here:
3396       ---------------------
3397
3398       __init__(self, unpack)
3399
3400   class gddrnf4_status(packet.utils.Enum)
3401       enum gddrnf4_status
3402
3403
3404   class gss_cb_handles4(baseobj.BaseObj)
3405       struct gss_cb_handles4 {
3406           rpc_gss_svc_t service;        /* RFC 2203 */
3407           gsshandle4_t  server_handle;
3408           gsshandle4_t  client_handle;
3409       };
3410
3411
3412       Methods defined here:
3413       ---------------------
3414
3415       __init__(self, unpack)
3416
3417   class io_info4(baseobj.BaseObj)
3418       struct io_info4 {
3419           uint64_t count;
3420           uint64_t bytes;
3421       };
3422
3423
3424       Methods defined here:
3425       ---------------------
3426
3427       __init__(self, unpack)
3428
3429   class labelformat_spec4(baseobj.BaseObj)
3430       struct labelformat_spec4 {
3431           policy4 lfs;
3432           policy4 pi;
3433       };
3434
3435
3436       Methods defined here:
3437       ---------------------
3438
3439       __init__(self, unpack)
3440
3441   class layout4(baseobj.BaseObj)
3442       struct layout4 {
3443           offset4         offset;
3444           length4         length;
3445           layoutiomode4   iomode;
3446           layout_content4 content;
3447       };
3448
3449
3450       Methods defined here:
3451       ---------------------
3452
3453       __init__(self, unpack)
3454
3455   class layout_content4(baseobj.BaseObj)
3456       union switch layout_content4 (layouttype4 type) {
3457           case const.LAYOUT4_NFSV4_1_FILES:
3458               nfsv4_1_file_layout4 body;
3459           case const.LAYOUT4_FLEX_FILES:
3460               ff_layout4 body;
3461           default:
3462               /* All other types are not supported yet */
3463               opaque body<>;
3464       };
3465
3466
3467       Methods defined here:
3468       ---------------------
3469
3470       __init__(self, unpack)
3471
3472   class layouthint4(baseobj.BaseObj)
3473       union switch layouthint4 (layouttype4 type) {
3474           case const.LAYOUT4_NFSV4_1_FILES:
3475               nfsv4_1_file_layouthint4 body;
3476           case const.LAYOUT4_FLEX_FILES:
3477               ff_layouthint4 body;
3478           default:
3479               /* All other types are not supported yet */
3480               opaque body<>;
3481       };
3482
3483
3484       Methods defined here:
3485       ---------------------
3486
3487       __init__(self, unpack)
3488
3489   class layoutiomode4(packet.utils.Enum)
3490       enum layoutiomode4
3491
3492
3493   class layoutrecall4(baseobj.BaseObj)
3494       union switch layoutrecall4 (layoutrecall_type4 recalltype) {
3495           case const.LAYOUTRECALL4_FILE:
3496               layoutrecall_file4 layout;
3497           case const.LAYOUTRECALL4_FSID:
3498               fsid4 fsid;
3499           case const.LAYOUTRECALL4_ALL:
3500               void;
3501       };
3502
3503
3504       Methods defined here:
3505       ---------------------
3506
3507       __init__(self, unpack)
3508
3509   class layoutrecall_file4(baseobj.BaseObj)
3510       struct layoutrecall_file4 {
3511           nfs_fh4  fh;
3512           offset4  offset;
3513           length4  length;
3514           stateid4 stateid;
3515       };
3516
3517
3518       Methods defined here:
3519       ---------------------
3520
3521       __init__(self, unpack)
3522
3523   class layoutrecall_type4(packet.utils.Enum)
3524       enum layoutrecall_type4
3525
3526
3527   class layoutreturn4(baseobj.BaseObj)
3528       union switch layoutreturn4 (layoutreturn_type4 returntype) {
3529           case const.LAYOUTRETURN4_FILE:
3530               layoutreturn_file4 layout;
3531           default:
3532               void;
3533       };
3534
3535
3536       Methods defined here:
3537       ---------------------
3538
3539       __init__(self, unpack)
3540
3541   class layoutreturn_file4(baseobj.BaseObj)
3542       struct layoutreturn_file4 {
3543           offset4                 offset;
3544           length4                 length;
3545           stateid4                stateid;
3546           /* layouttype4 specific data */
3547           layoutreturn_file_body4 data;
3548       };
3549
3550
3551       Methods defined here:
3552       ---------------------
3553
3554       __init__(self, unpack)
3555
3556   class layoutreturn_file_body4(baseobj.BaseObj)
3557       union switch layoutreturn_file_body4 (layouttype4 nfs4_layouttype) {
3558           case const.LAYOUT4_FLEX_FILES:
3559               ff_layoutreturn4 body;
3560           default:
3561               /* All other types are not supported yet or not used */
3562               opaque body<>;
3563       };
3564
3565
3566       Methods defined here:
3567       ---------------------
3568
3569       __init__(self, unpack)
3570
3571   class layoutreturn_stateid(baseobj.BaseObj)
3572       union switch layoutreturn_stateid (bool present) {
3573           case const.TRUE:
3574               stateid4 stateid;
3575           case const.FALSE:
3576               void;
3577       };
3578
3579
3580       Methods defined here:
3581       ---------------------
3582
3583       __init__(self, unpack)
3584
3585   class layoutreturn_type4(packet.utils.Enum)
3586       enum layoutreturn_type4
3587
3588
3589   class layouttype4(packet.utils.Enum)
3590       enum layouttype4
3591
3592
3593   class layoutupdate4(baseobj.BaseObj)
3594       struct layoutupdate4 {
3595           layouttype4 type;
3596           opaque      body<>;
3597       };
3598
3599
3600       Methods defined here:
3601       ---------------------
3602
3603       __init__(self, unpack)
3604
3605   class limit_by4(packet.utils.Enum)
3606       enum limit_by4
3607
3608
3609   class lock_owner4(baseobj.BaseObj)
3610       lock_owner4 = class state_owner4(baseobj.BaseObj)
3611
3612   class locker4(baseobj.BaseObj)
3613       union switch locker4 (bool new_lock_owner) {
3614           case const.TRUE:
3615               open_to_lock_owner4 open_owner;
3616           case const.FALSE:
3617               exist_lock_owner4 lock_owner;
3618       };
3619
3620
3621       Methods defined here:
3622       ---------------------
3623
3624       __init__(self, unpack)
3625
3626   class mdsthreshold4(baseobj.BaseObj)
3627       struct mdsthreshold4 {
3628           threshold_item4 hints<>;
3629       };
3630
3631
3632       Methods defined here:
3633       ---------------------
3634
3635       __init__(self, unpack)
3636
3637   class mode_masked4(baseobj.BaseObj)
3638       struct mode_masked4 {
3639           mode4 values;  /* Values of bits to set or reset in mode. */
3640           mode4 mask;    /* Mask of bits to set or reset in mode. */
3641       };
3642
3643
3644       Methods defined here:
3645       ---------------------
3646
3647       __init__(self, unpack)
3648
3649   class mode_umask4(baseobj.BaseObj)
3650       struct mode_umask4 {
3651           mode4 mode;
3652           mode4 umask;
3653       };
3654
3655
3656       Methods defined here:
3657       ---------------------
3658
3659       __init__(self, unpack)
3660
3661   class netaddr4(baseobj.BaseObj)
3662       netaddr4 = class clientaddr4(baseobj.BaseObj)
3663
3664   class netloc4(baseobj.BaseObj)
3665       union switch netloc4 (netloc_type4 type) {
3666           case const.NL4_NAME:
3667               utf8str_cis name;
3668           case const.NL4_URL:
3669               utf8str_cis url;
3670           case const.NL4_NETADDR:
3671               netaddr4 addr;
3672       };
3673
3674
3675       Methods defined here:
3676       ---------------------
3677
3678       __init__(self, unpack)
3679
3680   class netloc_type4(packet.utils.Enum)
3681       enum netloc_type4
3682
3683
3684   class newoffset4(baseobj.BaseObj)
3685       union switch newoffset4 (bool newoffset) {
3686           case const.TRUE:
3687               offset4 offset;
3688           case const.FALSE:
3689               void;
3690       };
3691
3692
3693       Methods defined here:
3694       ---------------------
3695
3696       __init__(self, unpack)
3697
3698   class newsize4(baseobj.BaseObj)
3699       union switch newsize4 (bool sizechanged) {
3700           case const.TRUE:
3701               length4 size;
3702           case const.FALSE:
3703               void;
3704       };
3705
3706
3707       Methods defined here:
3708       ---------------------
3709
3710       __init__(self, unpack)
3711
3712   class newtime4(baseobj.BaseObj)
3713       union switch newtime4 (bool timechanged) {
3714           case const.TRUE:
3715               nfstime4 time;
3716           case const.FALSE:
3717               void;
3718       };
3719
3720
3721       Methods defined here:
3722       ---------------------
3723
3724       __init__(self, unpack)
3725
3726   class nfs_argop4(baseobj.BaseObj)
3727       union switch nfs_argop4 (nfs_opnum4 argop) {
3728           case const.OP_ACCESS:
3729               ACCESS4args opaccess;
3730           case const.OP_CLOSE:
3731               CLOSE4args opclose;
3732           case const.OP_COMMIT:
3733               COMMIT4args opcommit;
3734           case const.OP_CREATE:
3735               CREATE4args opcreate;
3736           case const.OP_DELEGPURGE:
3737               DELEGPURGE4args opdelegpurge;
3738           case const.OP_DELEGRETURN:
3739               DELEGRETURN4args opdelegreturn;
3740           case const.OP_GETATTR:
3741               GETATTR4args opgetattr;
3742           case const.OP_GETFH:
3743               void;
3744           case const.OP_LINK:
3745               LINK4args oplink;
3746           case const.OP_LOCK:
3747               LOCK4args oplock;
3748           case const.OP_LOCKT:
3749               LOCKT4args oplockt;
3750           case const.OP_LOCKU:
3751               LOCKU4args oplocku;
3752           case const.OP_LOOKUP:
3753               LOOKUP4args oplookup;
3754           case const.OP_LOOKUPP:
3755               void;
3756           case const.OP_NVERIFY:
3757               NVERIFY4args opnverify;
3758           case const.OP_OPEN:
3759               OPEN4args opopen;
3760           case const.OP_OPENATTR:
3761               OPENATTR4args opopenattr;
3762           case const.OP_OPEN_CONFIRM:
3763               /* Not used in NFSv4.1 */
3764               OPEN_CONFIRM4args opopen_confirm;
3765           case const.OP_OPEN_DOWNGRADE:
3766               OPEN_DOWNGRADE4args opopen_downgrade;
3767           case const.OP_PUTFH:
3768               PUTFH4args opputfh;
3769           case const.OP_PUTPUBFH:
3770               void;
3771           case const.OP_PUTROOTFH:
3772               void;
3773           case const.OP_READ:
3774               READ4args opread;
3775           case const.OP_READDIR:
3776               READDIR4args opreaddir;
3777           case const.OP_READLINK:
3778               void;
3779           case const.OP_REMOVE:
3780               REMOVE4args opremove;
3781           case const.OP_RENAME:
3782               RENAME4args oprename;
3783           case const.OP_RENEW:
3784               /* Not used in NFSv4.1 */
3785               RENEW4args oprenew;
3786           case const.OP_RESTOREFH:
3787               void;
3788           case const.OP_SAVEFH:
3789               void;
3790           case const.OP_SECINFO:
3791               SECINFO4args opsecinfo;
3792           case const.OP_SETATTR:
3793               SETATTR4args opsetattr;
3794           case const.OP_SETCLIENTID:
3795               /* Not used in NFSv4.1 */
3796               SETCLIENTID4args opsetclientid;
3797           case const.OP_SETCLIENTID_CONFIRM:
3798               /* Not used in NFSv4.1 */
3799               SETCLIENTID_CONFIRM4args opsetclientid_confirm;
3800           case const.OP_VERIFY:
3801               VERIFY4args opverify;
3802           case const.OP_WRITE:
3803               WRITE4args opwrite;
3804           case const.OP_RELEASE_LOCKOWNER:
3805               /* Not used in NFSv4.1 */
3806               RELEASE_LOCKOWNER4args oprelease_lockowner;
3807           /*
3808            * New to NFSv4.1
3809            */
3810           case const.OP_BACKCHANNEL_CTL:
3811               BACKCHANNEL_CTL4args opbackchannel_ctl;
3812           case const.OP_BIND_CONN_TO_SESSION:
3813               BIND_CONN_TO_SESSION4args opbind_conn_to_session;
3814           case const.OP_EXCHANGE_ID:
3815               EXCHANGE_ID4args opexchange_id;
3816           case const.OP_CREATE_SESSION:
3817               CREATE_SESSION4args opcreate_session;
3818           case const.OP_DESTROY_SESSION:
3819               DESTROY_SESSION4args opdestroy_session;
3820           case const.OP_FREE_STATEID:
3821               FREE_STATEID4args opfree_stateid;
3822           case const.OP_GET_DIR_DELEGATION:
3823               GET_DIR_DELEGATION4args opget_dir_delegation;
3824           case const.OP_GETDEVICEINFO:
3825               GETDEVICEINFO4args opgetdeviceinfo;
3826           case const.OP_GETDEVICELIST:
3827               /* Not used in NFSv4.2 */
3828               GETDEVICELIST4args opgetdevicelist;
3829           case const.OP_LAYOUTCOMMIT:
3830               LAYOUTCOMMIT4args oplayoutcommit;
3831           case const.OP_LAYOUTGET:
3832               LAYOUTGET4args oplayoutget;
3833           case const.OP_LAYOUTRETURN:
3834               LAYOUTRETURN4args oplayoutreturn;
3835           case const.OP_SECINFO_NO_NAME:
3836               SECINFO_NO_NAME4args opsecinfo_no_name;
3837           case const.OP_SEQUENCE:
3838               SEQUENCE4args opsequence;
3839           case const.OP_SET_SSV:
3840               SET_SSV4args opset_ssv;
3841           case const.OP_TEST_STATEID:
3842               TEST_STATEID4args optest_stateid;
3843           case const.OP_WANT_DELEGATION:
3844               WANT_DELEGATION4args opwant_delegation;
3845           case const.OP_DESTROY_CLIENTID:
3846               DESTROY_CLIENTID4args opdestroy_clientid;
3847           case const.OP_RECLAIM_COMPLETE:
3848               RECLAIM_COMPLETE4args opreclaim_complete;
3849           /*
3850            * New to NFSv4.2
3851            */
3852           case const.OP_ALLOCATE:
3853               ALLOCATE4args opallocate;
3854           case const.OP_COPY:
3855               COPY4args opcopy;
3856           case const.OP_COPY_NOTIFY:
3857               COPY_NOTIFY4args opcopy_notify;
3858           case const.OP_DEALLOCATE:
3859               DEALLOCATE4args opdeallocate;
3860           case const.OP_IO_ADVISE:
3861               IO_ADVISE4args opio_advise;
3862           case const.OP_LAYOUTERROR:
3863               LAYOUTERROR4args oplayouterror;
3864           case const.OP_LAYOUTSTATS:
3865               LAYOUTSTATS4args oplayoutstats;
3866           case const.OP_OFFLOAD_CANCEL:
3867               OFFLOAD_CANCEL4args opoffload_cancel;
3868           case const.OP_OFFLOAD_STATUS:
3869               OFFLOAD_STATUS4args opoffload_status;
3870           case const.OP_READ_PLUS:
3871               READ_PLUS4args opread_plus;
3872           case const.OP_SEEK:
3873               SEEK4args opseek;
3874           case const.OP_WRITE_SAME:
3875               WRITE_SAME4args opwrite_same;
3876           case const.OP_CLONE:
3877               CLONE4args opclone;
3878           case const.OP_ILLEGAL:
3879               /* Illegal operation */
3880               void;
3881       };
3882
3883
3884       Methods defined here:
3885       ---------------------
3886
3887       __init__(self, unpack)
3888
3889   class nfs_bool(packet.utils.Enum)
3890       enum nfs_bool
3891
3892
3893   class nfs_cb_argop4(baseobj.BaseObj)
3894       union switch nfs_cb_argop4 (nfs_cb_opnum4 argop) {
3895           case const.OP_CB_GETATTR:
3896               CB_GETATTR4args opcbgetattr;
3897           case const.OP_CB_RECALL:
3898               CB_RECALL4args opcbrecall;
3899           /*
3900            * New to NFSv4.1
3901            */
3902           case const.OP_CB_LAYOUTRECALL:
3903               CB_LAYOUTRECALL4args opcblayoutrecall;
3904           case const.OP_CB_NOTIFY:
3905               CB_NOTIFY4args opcbnotify;
3906           case const.OP_CB_PUSH_DELEG:
3907               CB_PUSH_DELEG4args opcbpush_deleg;
3908           case const.OP_CB_RECALL_ANY:
3909               CB_RECALL_ANY4args opcbrecall_any;
3910           case const.OP_CB_RECALLABLE_OBJ_AVAIL:
3911               CB_RECALLABLE_OBJ_AVAIL4args opcbrecallable_obj_avail;
3912           case const.OP_CB_RECALL_SLOT:
3913               CB_RECALL_SLOT4args opcbrecall_slot;
3914           case const.OP_CB_SEQUENCE:
3915               CB_SEQUENCE4args opcbsequence;
3916           case const.OP_CB_WANTS_CANCELLED:
3917               CB_WANTS_CANCELLED4args opcbwants_cancelled;
3918           case const.OP_CB_NOTIFY_LOCK:
3919               CB_NOTIFY_LOCK4args opcbnotify_lock;
3920           case const.OP_CB_NOTIFY_DEVICEID:
3921               CB_NOTIFY_DEVICEID4args opcbnotify_deviceid;
3922           /*
3923            * New to NFSv4.2
3924            */
3925           case const.OP_CB_OFFLOAD:
3926               CB_OFFLOAD4args opcboffload;
3927           case const.OP_CB_ILLEGAL:
3928               /* Illegal callback operation */
3929               void;
3930       };
3931
3932
3933       Methods defined here:
3934       ---------------------
3935
3936       __init__(self, unpack)
3937
3938   class nfs_cb_opnum4(packet.utils.Enum)
3939       enum nfs_cb_opnum4
3940
3941
3942   class nfs_cb_resop4(baseobj.BaseObj)
3943       union switch nfs_cb_resop4 (nfs_cb_opnum4 resop) {
3944           case const.OP_CB_GETATTR:
3945               CB_GETATTR4res opcbgetattr;
3946           case const.OP_CB_RECALL:
3947               CB_RECALL4res opcbrecall;
3948           /*
3949            * New to NFSv4.1
3950            */
3951           case const.OP_CB_LAYOUTRECALL:
3952               CB_LAYOUTRECALL4res opcblayoutrecall;
3953           case const.OP_CB_NOTIFY:
3954               CB_NOTIFY4res opcbnotify;
3955           case const.OP_CB_PUSH_DELEG:
3956               CB_PUSH_DELEG4res opcbpush_deleg;
3957           case const.OP_CB_RECALL_ANY:
3958               CB_RECALL_ANY4res opcbrecall_any;
3959           case const.OP_CB_RECALLABLE_OBJ_AVAIL:
3960               CB_RECALLABLE_OBJ_AVAIL4res opcbrecallable_obj_avail;
3961           case const.OP_CB_RECALL_SLOT:
3962               CB_RECALL_SLOT4res opcbrecall_slot;
3963           case const.OP_CB_SEQUENCE:
3964               CB_SEQUENCE4res opcbsequence;
3965           case const.OP_CB_WANTS_CANCELLED:
3966               CB_WANTS_CANCELLED4res opcbwants_cancelled;
3967           case const.OP_CB_NOTIFY_LOCK:
3968               CB_NOTIFY_LOCK4res opcbnotify_lock;
3969           case const.OP_CB_NOTIFY_DEVICEID:
3970               CB_NOTIFY_DEVICEID4res opcbnotify_deviceid;
3971           /*
3972            * New to NFSv4.2
3973            */
3974           case const.OP_CB_OFFLOAD:
3975               CB_OFFLOAD4res opcboffload;
3976           case const.OP_CB_ILLEGAL:
3977               /* Illegal callback operation */
3978               CB_ILLEGAL4res opcbillegal;
3979       };
3980
3981
3982       Methods defined here:
3983       ---------------------
3984
3985       __init__(self, unpack)
3986
3987   class nfs_client_id4(baseobj.BaseObj)
3988       struct nfs_client_id4 {
3989           verifier4 verifier;
3990           opaque    id<NFS4_OPAQUE_LIMIT>;
3991       };
3992
3993
3994       Methods defined here:
3995       ---------------------
3996
3997       __init__(self, unpack)
3998
3999   class nfs_fattr4(packet.utils.Enum)
4000       enum nfs_fattr4
4001
4002
4003   class nfs_ftype4(packet.utils.Enum)
4004       enum nfs_ftype4
4005
4006
4007   class nfs_impl_id4(baseobj.BaseObj)
4008       struct nfs_impl_id4 {
4009           utf8str_cis domain;
4010           utf8str_cs  name;
4011           nfstime4    date;
4012       };
4013
4014
4015       Methods defined here:
4016       ---------------------
4017
4018       __init__(self, unpack)
4019
4020   class nfs_lock_type4(packet.utils.Enum)
4021       enum nfs_lock_type4
4022
4023
4024   class nfs_modified_limit4(baseobj.BaseObj)
4025       struct nfs_modified_limit4 {
4026           uint32_t num_blocks;
4027           uint32_t bytes_per_block;
4028       };
4029
4030
4031       Methods defined here:
4032       ---------------------
4033
4034       __init__(self, unpack)
4035
4036   class nfs_opnum4(packet.utils.Enum)
4037       enum nfs_opnum4
4038
4039
4040   class nfs_resop4(baseobj.BaseObj)
4041       union switch nfs_resop4 (nfs_opnum4 resop) {
4042           case const.OP_ACCESS:
4043               ACCESS4res opaccess;
4044           case const.OP_CLOSE:
4045               CLOSE4res opclose;
4046           case const.OP_COMMIT:
4047               COMMIT4res opcommit;
4048           case const.OP_CREATE:
4049               CREATE4res opcreate;
4050           case const.OP_DELEGPURGE:
4051               DELEGPURGE4res opdelegpurge;
4052           case const.OP_DELEGRETURN:
4053               DELEGRETURN4res opdelegreturn;
4054           case const.OP_GETATTR:
4055               GETATTR4res opgetattr;
4056           case const.OP_GETFH:
4057               GETFH4res opgetfh;
4058           case const.OP_LINK:
4059               LINK4res oplink;
4060           case const.OP_LOCK:
4061               LOCK4res oplock;
4062           case const.OP_LOCKT:
4063               LOCKT4res oplockt;
4064           case const.OP_LOCKU:
4065               LOCKU4res oplocku;
4066           case const.OP_LOOKUP:
4067               LOOKUP4res oplookup;
4068           case const.OP_LOOKUPP:
4069               LOOKUPP4res oplookupp;
4070           case const.OP_NVERIFY:
4071               NVERIFY4res opnverify;
4072           case const.OP_OPEN:
4073               OPEN4res opopen;
4074           case const.OP_OPENATTR:
4075               OPENATTR4res opopenattr;
4076           case const.OP_OPEN_CONFIRM:
4077               /* Not used in NFSv4.1 */
4078               OPEN_CONFIRM4res opopen_confirm;
4079           case const.OP_OPEN_DOWNGRADE:
4080               OPEN_DOWNGRADE4res opopen_downgrade;
4081           case const.OP_PUTFH:
4082               PUTFH4res opputfh;
4083           case const.OP_PUTPUBFH:
4084               PUTPUBFH4res opputpubfh;
4085           case const.OP_PUTROOTFH:
4086               PUTROOTFH4res opputrootfh;
4087           case const.OP_READ:
4088               READ4res opread;
4089           case const.OP_READDIR:
4090               READDIR4res opreaddir;
4091           case const.OP_READLINK:
4092               READLINK4res opreadlink;
4093           case const.OP_REMOVE:
4094               REMOVE4res opremove;
4095           case const.OP_RENAME:
4096               RENAME4res oprename;
4097           case const.OP_RENEW:
4098               /* Not used in NFSv4.1 */
4099               RENEW4res oprenew;
4100           case const.OP_RESTOREFH:
4101               RESTOREFH4res oprestorefh;
4102           case const.OP_SAVEFH:
4103               SAVEFH4res opsavefh;
4104           case const.OP_SECINFO:
4105               SECINFO4res opsecinfo;
4106           case const.OP_SETATTR:
4107               SETATTR4res opsetattr;
4108           case const.OP_SETCLIENTID:
4109               /* Not used in NFSv4.1 */
4110               SETCLIENTID4res opsetclientid;
4111           case const.OP_SETCLIENTID_CONFIRM:
4112               /* Not used in NFSv4.1 */
4113               SETCLIENTID_CONFIRM4res opsetclientid_confirm;
4114           case const.OP_VERIFY:
4115               VERIFY4res opverify;
4116           case const.OP_WRITE:
4117               WRITE4res opwrite;
4118           case const.OP_RELEASE_LOCKOWNER:
4119               /* Not used in NFSv4.1 */
4120               RELEASE_LOCKOWNER4res oprelease_lockowner;
4121           /*
4122            * New to NFSv4.1
4123            */
4124           case const.OP_BACKCHANNEL_CTL:
4125               BACKCHANNEL_CTL4res opbackchannel_ctl;
4126           case const.OP_BIND_CONN_TO_SESSION:
4127               BIND_CONN_TO_SESSION4res opbind_conn_to_session;
4128           case const.OP_EXCHANGE_ID:
4129               EXCHANGE_ID4res opexchange_id;
4130           case const.OP_CREATE_SESSION:
4131               CREATE_SESSION4res opcreate_session;
4132           case const.OP_DESTROY_SESSION:
4133               DESTROY_SESSION4res opdestroy_session;
4134           case const.OP_FREE_STATEID:
4135               FREE_STATEID4res opfree_stateid;
4136           case const.OP_GET_DIR_DELEGATION:
4137               GET_DIR_DELEGATION4res opget_dir_delegation;
4138           case const.OP_GETDEVICEINFO:
4139               GETDEVICEINFO4res opgetdeviceinfo;
4140           case const.OP_GETDEVICELIST:
4141               /* Not used in NFSv4.2 */
4142               GETDEVICELIST4res opgetdevicelist;
4143           case const.OP_LAYOUTCOMMIT:
4144               LAYOUTCOMMIT4res oplayoutcommit;
4145           case const.OP_LAYOUTGET:
4146               LAYOUTGET4res oplayoutget;
4147           case const.OP_LAYOUTRETURN:
4148               LAYOUTRETURN4res oplayoutreturn;
4149           case const.OP_SECINFO_NO_NAME:
4150               SECINFO_NO_NAME4res opsecinfo_no_name;
4151           case const.OP_SEQUENCE:
4152               SEQUENCE4res opsequence;
4153           case const.OP_SET_SSV:
4154               SET_SSV4res opset_ssv;
4155           case const.OP_TEST_STATEID:
4156               TEST_STATEID4res optest_stateid;
4157           case const.OP_WANT_DELEGATION:
4158               WANT_DELEGATION4res opwant_delegation;
4159           case const.OP_DESTROY_CLIENTID:
4160               DESTROY_CLIENTID4res opdestroy_clientid;
4161           case const.OP_RECLAIM_COMPLETE:
4162               RECLAIM_COMPLETE4res opreclaim_complete;
4163           /*
4164            * New to NFSv4.2
4165            */
4166           case const.OP_ALLOCATE:
4167               ALLOCATE4res opallocate;
4168           case const.OP_COPY:
4169               COPY4res opcopy;
4170           case const.OP_COPY_NOTIFY:
4171               COPY_NOTIFY4res opcopy_notify;
4172           case const.OP_DEALLOCATE:
4173               DEALLOCATE4res opdeallocate;
4174           case const.OP_IO_ADVISE:
4175               IO_ADVISE4res opio_advise;
4176           case const.OP_LAYOUTERROR:
4177               LAYOUTERROR4res oplayouterror;
4178           case const.OP_LAYOUTSTATS:
4179               LAYOUTSTATS4res oplayoutstats;
4180           case const.OP_OFFLOAD_CANCEL:
4181               OFFLOAD_CANCEL4res opoffload_cancel;
4182           case const.OP_OFFLOAD_STATUS:
4183               OFFLOAD_STATUS4res opoffload_status;
4184           case const.OP_READ_PLUS:
4185               READ_PLUS4res opread_plus;
4186           case const.OP_SEEK:
4187               SEEK4res opseek;
4188           case const.OP_WRITE_SAME:
4189               WRITE_SAME4res opwrite_same;
4190           case const.OP_CLONE:
4191               CLONE4res opclone;
4192           case const.OP_ILLEGAL:
4193               /* Illegal operation */
4194               ILLEGAL4res opillegal;
4195       };
4196
4197
4198       Methods defined here:
4199       ---------------------
4200
4201       __init__(self, unpack)
4202
4203   class nfs_secflavor4(packet.utils.Enum)
4204       enum nfs_secflavor4
4205
4206
4207   class nfs_space_limit4(baseobj.BaseObj)
4208       union switch nfs_space_limit4 (limit_by4 limitby) {
4209           /* limit specified as file size */
4210           case const.NFS_LIMIT_SIZE:
4211               uint64_t filesize;
4212           /* limit specified by number of blocks */
4213           case const.NFS_LIMIT_BLOCKS:
4214               nfs_modified_limit4 mod_blocks;
4215       };
4216
4217
4218       Methods defined here:
4219       ---------------------
4220
4221       __init__(self, unpack)
4222
4223   class nfsace4(baseobj.BaseObj)
4224       struct nfsace4 {
4225           acetype4      type;
4226           aceflag4      flag;
4227           acemask4      mask;
4228           utf8str_mixed who;
4229       };
4230
4231
4232       Methods defined here:
4233       ---------------------
4234
4235       __init__(self, unpack)
4236
4237   class nfsacl41(baseobj.BaseObj)
4238       struct nfsacl41 {
4239           aclflag4 flag;
4240           nfsace4  aces<>;
4241       };
4242
4243
4244       Methods defined here:
4245       ---------------------
4246
4247       __init__(self, unpack)
4248
4249   class nfsstat4(packet.utils.Enum)
4250       enum nfsstat4
4251
4252
4253   class nfstime4(baseobj.BaseObj)
4254       struct nfstime4 {
4255           int64_t  seconds;
4256           uint32_t nseconds;
4257       };
4258
4259
4260       Methods defined here:
4261       ---------------------
4262
4263       __init__(self, unpack)
4264
4265   class nfsv4_1_file_layout4(baseobj.BaseObj)
4266       struct nfsv4_1_file_layout4 {
4267           uint32_t  size;                /* opaque size from layout_content4 */
4268           deviceid4 deviceid;
4269           nfl_util4 nfl_util;
4270           uint32_t  first_stripe_index;
4271           offset4   pattern_offset;
4272           nfs_fh4   fh_list<>;
4273       };
4274
4275
4276       Methods defined here:
4277       ---------------------
4278
4279       __init__(self, unpack)
4280
4281   class nfsv4_1_file_layout_ds_addr4(baseobj.BaseObj)
4282       struct nfsv4_1_file_layout_ds_addr4 {
4283           uint32_t        size;                 /* opaque size from device_addr4 */
4284           uint32_t        stripe_indices<>;
4285           multipath_list4 multipath_ds_list<>;
4286       };
4287
4288
4289       Methods defined here:
4290       ---------------------
4291
4292       __init__(self, unpack)
4293
4294   class nfsv4_1_file_layouthint4(baseobj.BaseObj)
4295       struct nfsv4_1_file_layouthint4 {
4296           uint32_t  size;          /* opaque size from layouthint4 */
4297           uint32_t  care;
4298           nfl_util4 nfl_util;
4299           count4    stripe_count;
4300       };
4301
4302
4303       Methods defined here:
4304       ---------------------
4305
4306       __init__(self, unpack)
4307
4308   class notify4(baseobj.BaseObj)
4309       struct notify4 {
4310           /* composed from notify_type4 or notify_deviceid_type4 */
4311           bitmap4     mask;
4312           notifylist4 values;
4313       };
4314
4315
4316       Methods defined here:
4317       ---------------------
4318
4319       __init__(self, unpack)
4320
4321   class notify_add4(baseobj.BaseObj)
4322       struct notify_add4 {
4323           /*
4324            * Information on object
4325            * possibly renamed over.
4326            */
4327           notify_remove4 old_entry<1>;
4328           notify_entry4  new_entry;
4329           /* what READDIR would have returned for this entry */
4330           nfs_cookie4    new_cookie<1>;
4331           prev_entry4    prev_entry<1>;
4332           bool           last_entry;
4333       };
4334
4335
4336       Methods defined here:
4337       ---------------------
4338
4339       __init__(self, unpack)
4340
4341   class notify_attr4(baseobj.BaseObj)
4342       struct notify_attr4 {
4343           notify_entry4 entry;
4344       };
4345
4346
4347       Methods defined here:
4348       ---------------------
4349
4350       __init__(self, unpack)
4351
4352   class notify_deviceid_change4(baseobj.BaseObj)
4353       struct notify_deviceid_change4 {
4354           layouttype4 type;
4355           deviceid4   deviceid;
4356           bool        immediate;
4357       };
4358
4359
4360       Methods defined here:
4361       ---------------------
4362
4363       __init__(self, unpack)
4364
4365   class notify_deviceid_delete4(baseobj.BaseObj)
4366       struct notify_deviceid_delete4 {
4367           layouttype4 type;
4368           deviceid4   deviceid;
4369       };
4370
4371
4372       Methods defined here:
4373       ---------------------
4374
4375       __init__(self, unpack)
4376
4377   class notify_deviceid_type4(packet.utils.Enum)
4378       enum notify_deviceid_type4
4379
4380
4381   class notify_entry4(baseobj.BaseObj)
4382       struct notify_entry4 {
4383           component4 name;
4384           fattr4     attrs;
4385       };
4386
4387
4388       Methods defined here:
4389       ---------------------
4390
4391       __init__(self, unpack)
4392
4393   class notify_remove4(baseobj.BaseObj)
4394       struct notify_remove4 {
4395           notify_entry4 entry;
4396           nfs_cookie4   cookie;
4397       };
4398
4399
4400       Methods defined here:
4401       ---------------------
4402
4403       __init__(self, unpack)
4404
4405   class notify_rename4(baseobj.BaseObj)
4406       struct notify_rename4 {
4407           notify_remove4 old_entry;
4408           notify_add4    new_entry;
4409       };
4410
4411
4412       Methods defined here:
4413       ---------------------
4414
4415       __init__(self, unpack)
4416
4417   class notify_type4(packet.utils.Enum)
4418       enum notify_type4
4419
4420
4421   class notify_verifier4(baseobj.BaseObj)
4422       struct notify_verifier4 {
4423           verifier4 old_verifier;
4424           verifier4 new_verifier;
4425       };
4426
4427
4428       Methods defined here:
4429       ---------------------
4430
4431       __init__(self, unpack)
4432
4433   class offload_info4(baseobj.BaseObj)
4434       union switch offload_info4 (nfsstat4 status) {
4435           case const.NFS4_OK:
4436               write_response4 resok;
4437           default:
4438               length4 count;
4439       };
4440
4441
4442       Methods defined here:
4443       ---------------------
4444
4445       __init__(self, unpack)
4446
4447   class open_claim4(baseobj.BaseObj)
4448       union switch open_claim4 (open_claim_type4 claim) {
4449           /*
4450            * No special rights to file.
4451            * Ordinary OPEN of the specified file.
4452            */
4453           case const.CLAIM_NULL:
4454               /* CURRENT_FH: directory */
4455               component4 name;
4456           /*
4457            * Right to the file established by an
4458            * open previous to server reboot. File
4459            * identified by filehandle obtained at
4460            * that time rather than by name.
4461            */
4462           case const.CLAIM_PREVIOUS:
4463               /* CURRENT_FH: file being reclaimed */
4464               open_delegation_type4 deleg_type;
4465           /*
4466            * Right to file based on a delegation
4467            * granted by the server. File is
4468            * specified by name.
4469            */
4470           case const.CLAIM_DELEGATE_CUR:
4471               /* CURRENT_FH: directory */
4472               open_claim_delegate_cur4 deleg_info;
4473           /*
4474            * Right to file based on a delegation
4475            * granted to a previous boot instance
4476            * of the client.  File is specified by name.
4477            */
4478           case const.CLAIM_DELEGATE_PREV:
4479               /* CURRENT_FH: directory */
4480               component4 name;
4481           /*
4482            * Like CLAIM_NULL. No special rights
4483            * to file. Ordinary OPEN of the
4484            * specified file by current filehandle.
4485            */
4486           case const.CLAIM_FH:                     /* New to NFSv4.1 */
4487               /* CURRENT_FH: regular file to open */
4488               void;
4489           /*
4490            * Like CLAIM_DELEGATE_PREV. Right to file based on a
4491            * delegation granted to a previous boot
4492            * instance of the client.  File is identified by
4493            * by filehandle.
4494            */
4495           case const.CLAIM_DELEG_PREV_FH:          /* New to NFSv4.1 */
4496               /* CURRENT_FH: file being opened */
4497               void;
4498           /*
4499            * Like CLAIM_DELEGATE_CUR. Right to file based on
4500            * a delegation granted by the server.
4501            * File is identified by filehandle.
4502            */
4503           case const.CLAIM_DELEG_CUR_FH:           /* New to NFSv4.1 */
4504               /* CURRENT_FH: file being opened */
4505               stateid4 stateid;
4506       };
4507
4508
4509       Methods defined here:
4510       ---------------------
4511
4512       __init__(self, unpack)
4513
4514   class open_claim_delegate_cur4(baseobj.BaseObj)
4515       struct open_claim_delegate_cur4 {
4516           stateid4   stateid;
4517           component4 name;
4518       };
4519
4520
4521       Methods defined here:
4522       ---------------------
4523
4524       __init__(self, unpack)
4525
4526   class open_claim_type4(packet.utils.Enum)
4527       enum open_claim_type4
4528
4529
4530   class open_delegation4(baseobj.BaseObj)
4531       union switch open_delegation4 (open_delegation_type4 deleg_type) {
4532           case const.OPEN_DELEGATE_NONE:
4533               void;
4534           case const.OPEN_DELEGATE_READ:
4535               open_read_delegation4 read;
4536           case const.OPEN_DELEGATE_WRITE:
4537               open_write_delegation4 write;
4538           case const.OPEN_DELEGATE_NONE_EXT:  /* New to NFSv4.1 */
4539               open_none_delegation4 whynone;
4540       };
4541
4542
4543       Methods defined here:
4544       ---------------------
4545
4546       __init__(self, unpack)
4547
4548   class open_delegation_type4(packet.utils.Enum)
4549       enum open_delegation_type4
4550
4551
4552   class open_none_delegation4(baseobj.BaseObj)
4553       union switch open_none_delegation4 (why_no_delegation4 why) {
4554           case const.WND4_CONTENTION:
4555               /* Server will push delegation */
4556               bool push;
4557           case const.WND4_RESOURCE:
4558               /* Server will signal availability */
4559               bool signal;
4560           default:
4561               void;
4562       };
4563
4564
4565       Methods defined here:
4566       ---------------------
4567
4568       __init__(self, unpack)
4569
4570   class open_owner4(baseobj.BaseObj)
4571       open_owner4 = class state_owner4(baseobj.BaseObj)
4572
4573   class open_read_delegation4(baseobj.BaseObj)
4574       struct open_read_delegation4 {
4575           stateid4 stateid;      /* Stateid for delegation */
4576           bool     recall;       /* Pre-recalled flag for delegations obtained by reclaim (CLAIM_PREVIOUS) */
4577           nfsace4  permissions;  /* Defines users who don't need an ACCESS call to open for read */
4578       };
4579
4580
4581       Methods defined here:
4582       ---------------------
4583
4584       __init__(self, unpack)
4585
4586   class open_to_lock_owner4(baseobj.BaseObj)
4587       struct open_to_lock_owner4 {
4588           seqid4      seqid;
4589           stateid4    stateid;
4590           seqid4      lock_seqid;
4591           lock_owner4 lock_owner;
4592       };
4593
4594
4595       Methods defined here:
4596       ---------------------
4597
4598       __init__(self, unpack)
4599
4600   class open_write_delegation4(baseobj.BaseObj)
4601       struct open_write_delegation4 {
4602           stateid4         stateid;      /* Stateid for delegation */
4603           bool             recall;       /* Pre-recalled flag for delegations obtained by reclaim (CLAIM_PREVIOUS) */
4604           nfs_space_limit4 space_limit;  /* Defines condition that the client must check to determine whether the file needs to be flushed to the server on close. */
4605           nfsace4          permissions;  /* Defines users who don't need an ACCESS call as part of a delegated open. */
4606       };
4607
4608
4609       Methods defined here:
4610       ---------------------
4611
4612       __init__(self, unpack)
4613
4614   class openflag4(baseobj.BaseObj)
4615       union switch openflag4 (opentype4 opentype) {
4616           case const.OPEN4_CREATE:
4617               createhow4 how;
4618           default:
4619               void;
4620       };
4621
4622
4623       Methods defined here:
4624       ---------------------
4625
4626       __init__(self, unpack)
4627
4628   class opentype4(packet.utils.Enum)
4629       enum opentype4
4630
4631
4632   class prev_entry4(baseobj.BaseObj)
4633       struct prev_entry4 {
4634           notify_entry4 entry;
4635           /* what READDIR returned for this entry */
4636           nfs_cookie4   cookie;
4637       };
4638
4639
4640       Methods defined here:
4641       ---------------------
4642
4643       __init__(self, unpack)
4644
4645   class read_plus_content(baseobj.BaseObj)
4646       union switch read_plus_content (data_content4 content) {
4647           case const.NFS4_CONTENT_DATA:
4648               data4 data;
4649           case const.NFS4_CONTENT_HOLE:
4650               data_info4 hole;
4651           default:
4652               void;
4653       };
4654
4655
4656       Methods defined here:
4657       ---------------------
4658
4659       __init__(self, unpack)
4660
4661   class read_plus_res4(baseobj.BaseObj)
4662       struct read_plus_res4 {
4663           bool              eof;
4664           read_plus_content contents<>;
4665       };
4666
4667
4668       Methods defined here:
4669       ---------------------
4670
4671       __init__(self, unpack)
4672
4673   class referring_call4(baseobj.BaseObj)
4674       struct referring_call4 {
4675           sequenceid4 sequenceid;
4676           slotid4     slotid;
4677       };
4678
4679
4680       Methods defined here:
4681       ---------------------
4682
4683       __init__(self, unpack)
4684
4685   class referring_call_list4(baseobj.BaseObj)
4686       struct referring_call_list4 {
4687           sessionid4      sessionid;
4688           referring_call4 referring_calls<>;
4689       };
4690
4691
4692       Methods defined here:
4693       ---------------------
4694
4695       __init__(self, unpack)
4696
4697   class retention_get4(baseobj.BaseObj)
4698       struct retention_get4 {
4699           uint64_t duration;
4700           nfstime4 begin_time<1>;
4701       };
4702
4703
4704       Methods defined here:
4705       ---------------------
4706
4707       __init__(self, unpack)
4708
4709   class retention_set4(baseobj.BaseObj)
4710       struct retention_set4 {
4711           bool     enable;
4712           uint64_t duration<1>;
4713       };
4714
4715
4716       Methods defined here:
4717       ---------------------
4718
4719       __init__(self, unpack)
4720
4721   class rpc_gss_svc_t(packet.utils.Enum)
4722       enum rpc_gss_svc_t
4723
4724
4725   class rpcsec_gss_info(baseobj.BaseObj)
4726       struct rpcsec_gss_info {
4727           sec_oid4      oid;
4728           qop4          qop;
4729           rpc_gss_svc_t service;
4730       };
4731
4732
4733       Methods defined here:
4734       ---------------------
4735
4736       __init__(self, unpack)
4737
4738   class sec_label4(baseobj.BaseObj)
4739       struct sec_label4 {
4740           labelformat_spec4 lfs;
4741           opaque            data<>;
4742       };
4743
4744
4745       Methods defined here:
4746       ---------------------
4747
4748       __init__(self, unpack)
4749
4750   class secinfo4(baseobj.BaseObj)
4751       union switch secinfo4 (nfs_secflavor4 flavor) {
4752           case const.RPCSEC_GSS:
4753               rpcsec_gss_info info;
4754           default:
4755               void;
4756       };
4757
4758
4759       Methods defined here:
4760       ---------------------
4761
4762       __init__(self, unpack)
4763
4764   class secinfo_style4(packet.utils.Enum)
4765       enum secinfo_style4
4766
4767
4768   class seek_res4(baseobj.BaseObj)
4769       struct seek_res4 {
4770           bool    eof;
4771           offset4 offset;
4772       };
4773
4774
4775       Methods defined here:
4776       ---------------------
4777
4778       __init__(self, unpack)
4779
4780   class server_owner4(baseobj.BaseObj)
4781       struct server_owner4 {
4782           uint64_t minor_id;
4783           opaque   major_id<NFS4_OPAQUE_LIMIT>;
4784       };
4785
4786
4787       Methods defined here:
4788       ---------------------
4789
4790       __init__(self, unpack)
4791
4792   class settime4(baseobj.BaseObj)
4793       union switch settime4 (time_how4 set_it) {
4794           case const.SET_TO_CLIENT_TIME4:
4795               nfstime4 time;
4796           default:
4797               void;
4798       };
4799
4800
4801       Methods defined here:
4802       ---------------------
4803
4804       __init__(self, unpack)
4805
4806   class specdata4(baseobj.BaseObj)
4807       struct specdata4 {
4808           uint32_t specdata1;  /* major device number */
4809           uint32_t specdata2;  /* minor device number */
4810       };
4811
4812
4813       Methods defined here:
4814       ---------------------
4815
4816       __init__(self, unpack)
4817
4818   class ssa_digest_input4(baseobj.BaseObj)
4819       struct ssa_digest_input4 {
4820           SEQUENCE4args seqargs;
4821       };
4822
4823
4824       Methods defined here:
4825       ---------------------
4826
4827       __init__(self, unpack)
4828
4829   class ssr_digest_input4(baseobj.BaseObj)
4830       struct ssr_digest_input4 {
4831           SEQUENCE4res seqres;
4832       };
4833
4834
4835       Methods defined here:
4836       ---------------------
4837
4838       __init__(self, unpack)
4839
4840   class ssv_mic_plain_tkn4(baseobj.BaseObj)
4841       struct ssv_mic_plain_tkn4 {
4842           uint32_t ssv_seq;
4843           opaque   orig_plain<>;
4844       };
4845
4846
4847       Methods defined here:
4848       ---------------------
4849
4850       __init__(self, unpack)
4851
4852   class ssv_mic_tkn4(baseobj.BaseObj)
4853       struct ssv_mic_tkn4 {
4854           uint32_t ssv_seq;
4855           opaque   hmac<>;
4856       };
4857
4858
4859       Methods defined here:
4860       ---------------------
4861
4862       __init__(self, unpack)
4863
4864   class ssv_prot_info4(baseobj.BaseObj)
4865       struct ssv_prot_info4 {
4866           state_protect_ops4 ops;
4867           uint32_t           hash_alg;
4868           uint32_t           encr_alg;
4869           uint32_t           ssv_len;
4870           uint32_t           window;
4871           gsshandle4_t       handles<>;
4872       };
4873
4874
4875       Methods defined here:
4876       ---------------------
4877
4878       __init__(self, unpack)
4879
4880   class ssv_seal_cipher_tkn4(baseobj.BaseObj)
4881       struct ssv_seal_cipher_tkn4 {
4882           uint32_t ssv_seq;
4883           opaque   iv<>;
4884           opaque   encr_data<>;
4885           opaque   hmac<>;
4886       };
4887
4888
4889       Methods defined here:
4890       ---------------------
4891
4892       __init__(self, unpack)
4893
4894   class ssv_seal_plain_tkn4(baseobj.BaseObj)
4895       struct ssv_seal_plain_tkn4 {
4896           opaque   confounder<>;
4897           uint32_t ssv_seq;
4898           opaque   orig_plain<>;
4899           opaque   pad<>;
4900       };
4901
4902
4903       Methods defined here:
4904       ---------------------
4905
4906       __init__(self, unpack)
4907
4908   class ssv_sp_parms4(baseobj.BaseObj)
4909       struct ssv_sp_parms4 {
4910           state_protect_ops4 ops;
4911           sec_oid4           hash_algs<>;
4912           sec_oid4           encr_algs<>;
4913           uint32_t           window;
4914           uint32_t           num_gss_handles;
4915       };
4916
4917
4918       Methods defined here:
4919       ---------------------
4920
4921       __init__(self, unpack)
4922
4923   class ssv_subkey4(packet.utils.Enum)
4924       enum ssv_subkey4
4925
4926
4927   class stable_how4(packet.utils.Enum)
4928       enum stable_how4
4929
4930
4931   class state_owner4(baseobj.BaseObj)
4932       struct state_owner4 {
4933           clientid4 clientid;
4934           opaque    owner<NFS4_OPAQUE_LIMIT>;
4935       };
4936
4937
4938       Methods defined here:
4939       ---------------------
4940
4941       __init__(self, unpack)
4942
4943   class state_protect4_a(baseobj.BaseObj)
4944       union switch state_protect4_a (state_protect_how4 how) {
4945           case const.SP4_NONE:
4946               void;
4947           case const.SP4_MACH_CRED:
4948               state_protect_ops4 mach_ops;
4949           case const.SP4_SSV:
4950               ssv_sp_parms4 ssv_parms;
4951       };
4952
4953
4954       Methods defined here:
4955       ---------------------
4956
4957       __init__(self, unpack)
4958
4959   class state_protect4_r(baseobj.BaseObj)
4960       union switch state_protect4_r (state_protect_how4 how) {
4961           case const.SP4_NONE:
4962               void;
4963           case const.SP4_MACH_CRED:
4964               state_protect_ops4 mach_ops;
4965           case const.SP4_SSV:
4966               ssv_prot_info4 ssv_info;
4967       };
4968
4969
4970       Methods defined here:
4971       ---------------------
4972
4973       __init__(self, unpack)
4974
4975   class state_protect_how4(packet.utils.Enum)
4976       enum state_protect_how4
4977
4978
4979   class state_protect_ops4(baseobj.BaseObj)
4980       struct state_protect_ops4 {
4981           bitmap4 enforce;
4982           bitmap4 allow;
4983       };
4984
4985
4986       Methods defined here:
4987       ---------------------
4988
4989       __init__(self, unpack)
4990
4991   class stateid4(baseobj.BaseObj)
4992       struct stateid4 {
4993           uint32_t seqid;
4994           opaque   other[NFS4_OTHER_SIZE];
4995       };
4996
4997
4998       Methods defined here:
4999       ---------------------
5000
5001       __init__(self, unpack)
5002
5003   class threshold_item4(baseobj.BaseObj)
5004       struct threshold_item4 {
5005           layouttype4 type;
5006           bitmap4     mask;
5007           opaque      values<>;
5008       };
5009
5010
5011       Methods defined here:
5012       ---------------------
5013
5014       __init__(self, unpack)
5015
5016   class time_how4(packet.utils.Enum)
5017       enum time_how4
5018
5019
5020   class why_no_delegation4(packet.utils.Enum)
5021       enum why_no_delegation4
5022
5023
5024   class write_response4(baseobj.BaseObj)
5025       struct write_response4 {
5026           stateid4    stateid<1>;
5027           length4     count;
5028           stable_how4 committed;
5029           verifier4   verifier;
5030       };
5031
5032
5033       Methods defined here:
5034       ---------------------
5035
5036       __init__(self, unpack)
5037

FUNCTIONS

5039   SECINFO4resok(unpack)
5040   aceflag4(unpack)
5041   acemask4(unpack)
5042   acetype4(unpack)
5043   aclflag4(unpack)
5044   bitmap4(unpack)
5045   changeid4(unpack)
5046   clientid4(unpack)
5047   deviceid4(unpack)
5048   fattr4(unpack)
5049       struct fattr4 {
5050           bitmap4   mask;
5051           attrlist4 values; };
5052
5053   fattr4_acl(unpack)
5054   fattr4_change(unpack)
5055   fattr4_filehandle(unpack)
5056   fattr4_fs_layout_types(unpack)
5057   fattr4_layout_types(unpack)
5058   fattr4_suppattr_exclcreat(unpack)
5059   fattr4_supported_attrs(unpack)
5060   gsshandle4_t(unpack)
5061   multipath_list4(unpack)
5062   nfl_util4(unpack)
5063   nfs_fh4(unpack)
5064   notifylist4(unpack)
5065        Objects of type notify_<>4 and
5066        notify_device_<>4 are encoded in this.
5067
5068   pathname4(unpack)
5069   sec_oid4(unpack)
5070   sessionid4(unpack)
5071   verifier4(unpack)

SEE ALSO

5073       baseobj(3), packet.nfs.nfsbase(3), packet.unpack(3), packet.utils(3)
5074
5075

BUGS

5077       No known bugs.
5078

AUTHOR

5080       Jorge Mora (mora@netapp.com)
5081
5082
5083
5084NFStest 2.1.5                  14 February 2017                        NFS4(3)
Impressum